- 博客(95)
- 收藏
- 关注
原创 multiprocessing,threading与subprocess区别
解决了Python中的全局解释器锁(GIL)问题,使得多进程可以真正并行执行。用途:用于在Python程序中启动和控制外部进程,可以与其他程序进行交互。适用于需要与外部进程进行通信的场景,如运行shell命令、调用外部脚本等。用途:用于创建并发执行的进程,从而利用多核处理器的能力来加速程序的执行。用途:用于在一个进程内创建多个线程,线程共享进程的内存空间。线程的创建和管理开销较小,但在多核CPU上性能提升有限。可以创建多个独立的进程,每个进程都有自己的内存空间。可以捕获和处理外部进程的输入输出。
2024-08-16 21:32:58 297
原创 os.system()、os.popen()和subprocess的区别
这意味着,如果你的子进程是一个长时间运行的进程,那么 communicate() 会导致你的 Python 脚本一直等待下去,直到子进程完成。从上面实例可知,os.popen执行打开QQScLauncher.exe这个工具,但从实际执行结果看,QQScLauncher.exe还没打开,就直接进入了下一条语句,打印了"test"该命令会先创建一个管道,然后fork一个子进程,关闭管道的一端,执行exec,最后返回一个标准的io文件指针。优势: 可以捕获命令的输出,适用于需要处理命令输出的情况。
2024-08-16 18:50:08 811
转载 数据库死锁
在数据库的上下文中,死锁是指两个或多个事务无法进行的情况,因为每个事务都在等待另一个事务释放资源。如果事务A和事务B同时执行,并且时间安排是这样的,即事务A锁定订单表和事务在事务A有机会提交之前,锁定了Customers表,那么就会发生死锁。
2024-08-16 15:52:17 37
原创 postgres 逻辑复制
移除订阅时,需要保留复制槽。通常这个远端的复制槽是自动管理的,在CREATE SUBSCRIPTION时自动创建,在DROP SUBSCRIPTION时自动删除。这种情况下,您必须在远端手工创建复制槽后,才能在本地启用该订阅。移除订阅时,远端不可达。这种情况下,需要在删除订阅之前使用ALTER SUBSCRIPTION解除复制槽与订阅的关联。创建订阅时,所需的复制槽已经存在。创建订阅时,远端不可达或状态不明朗,则可以通过connect =每个活跃的订阅都会通过复制槽 从远程发布者接受变更。
2024-07-20 17:40:57 703
原创 postgres 的WAL日志膨胀的几种原因
原因是如果没有这种机制,主库执行UPDATE并VACUUM了,由于主库上已经不存在使用被更新元组的事务,VACUUM 会将这些元组清理掉,当 备库回放到 VACUUM 对应的日志时,检测到当前 VACUUM 清理的元组仍然被这个长时间的查询使用,则会阻塞备库的WAL日志应用,导致备库有很大的延迟。如果逻辑复制或物理复制停掉了,但一时半会还启动不起来,而主库的空间又要慢了,这时可以强制把复制槽给删除掉,注意删除掉逻辑复制的复制槽后,逻辑复制的同步就废弃了,后续的恢复需要做全量的数据恢复。
2024-07-19 23:53:17 1196
原创 postgres 的dblink使用,远程连接数据库
另外需要注意是否在public下,不在public下,在public下运行会错误。第二个参数是要执行的SQL查询语句。AS子句用于指定返回结果的列名和数据类型。其中,第一个参数是dblink名字,也可以是连接字符串。长期连接注意需要关闭连接,本身不会自动关闭连接。
2024-07-10 23:43:56 397
转载 Navicat连接postgresql 15 时出现‘datlastsysoid does not exist‘报错的问题
4、在文件中搜索“SELECT DISTINCT datlastsysoid”,并将其替换为“SELECT DISTINCT dattablespace”,5、将文件保存在原始位置。如果遇到任何安全问题,请将其另存为“.txt”文件,然后还原备份文件。2、备份libcc.dll文件,将其复制并粘贴为“libcc.dll.bak”或任何其他名称。6、重启navicat,可以发现,无论老和新版本的pgsql,都可以正常访问了。3、在任何十六进制编辑器中打开此文件,如果需要,您可以使用在线工具,例如。
2024-07-08 11:53:40 283 1
原创 web有哪些方式可以实时更新数据
使用场景:WebSocket更通用,适用于任何需要实时双向通信的应用。GraphQL订阅专注于数据订阅模型,适用于当数据发生变化时需要通知客户端的场景。数据结构和格式:WebSocket不关心数据格式,而GraphQL订阅使用GraphQL查询语言来精确定义客户端期望接收的数据的形状和类型。实现细节:WebSocket是一种底层的通信协议,而GraphQL订阅是一种在WebSocket(或其他传输层协议)之上实现的高级抽象。
2024-04-02 22:10:58 3244 1
原创 高频更新使用sse好还是WebSocket
如果你的应用只需要服务器向客户端推送数据,且更新频率不是极端高频(比如实时股票行情),那么SSE可能是一个更简单且有效的解决方案。如果需要双向通信,或者客户端也需要频繁向服务器发送数据(比如在线游戏、聊天应用),WebSocket将是更合适的选择。对于高频更新,两者都可以实现,但WebSocket可能在数据传输效率上更有优势,尤其是在需要双向通信的场景下。最终,选择哪种技术应基于你的具体需求、预期的用户体验以及开发和维护的复杂度。
2024-02-28 19:56:35 869 1
原创 html 菜单点击切换样式,菜单<a> 控制iframe
为了限制 iframe 的风险,HTML 提供了sandbox属性,允许设置嵌入的网页的权限,等同于提供了一个隔离层,即“沙箱”。allow-storage-access-by-user-activation:允许在用户激动的情况下,嵌入的网页通过 Storage Access API 访问父窗口的储存。importance:浏览器下载嵌入的网页的优先级,可以设置三个值。allow-downloads-without-user-activation:允许在没有用户激活的情况下,嵌入的网页启动下载。
2023-11-19 21:35:29 825 1
原创 windows pgsql 数据库 数据目录更改
修改完毕后,可以用psql命令“show data_directory”查看当前数据目录。将“-D”后的目录名修改为新的数据目录位置即可,如果目录路径中含有空格,需要用引号引起。将原来数据目录拷贝新的数据目录。
2023-11-19 20:12:50 689
原创 windows pgsql 数据库迁移
运行cmd,输入regedit打开注册表,修改 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\postgresql-x64-9.1。postgresql-x64-9.1 查看版本号。找到 postgres 服务停止。将数据库文件拷贝到要迁移的目录下。
2023-06-27 11:16:37 1035
原创 cpython编译与运行
异常处理在开发中非常重要,你在开发的过程中,大部分的时间会耗在处理各种异常情况上。如果你之前选择了 64位,则这里有两个异常处理模型供你选择,seh 是新发明的,而 sjlj 则是古老的。如这个笑话所说的,如果你想要开发 Windows 程序,需要选择 win32 ,而开发 Linux、Unix、Mac OS 等其他操作系统下的程序,则需要选择 posix。同样的,dwarf 的性能要优于 sjlj ,可以它不支持 64位。操作:我只开发在 Windows 下运行的程序,所以选择了 win32。
2023-06-07 20:53:48 1094
原创 transformers 的使用
repo_id含义为模型在huggingface的路径,allow_patterns为你想要下载的文件(因为repo_id目录下文件很多,你可以通过此参数下载自己想要的文件),local_dir含义为模型保存在本地的路径。在 抱抱脸 网址 上发布了很多已经训练好的模型,基本上大量的NLP模型都在,一开始是发布 transformers 的开源库,但后来连接了开发者和使用者。方法1:transformers.pipline。调用方法直接下载模型时,经常会下载很久甚至失败.Hugging Face官方教程。
2023-05-27 00:03:20 1952
原创 pip 安装 pytorch
最好先创建一个虚拟环境,因为如果在同一环境,升级某一个包可能会导致另一个包无法使用,比如 a的包是1.0,b的包是1.0依赖a的1.0,然后a升级为1.1,b可能无法使用。在不影响主机系统设置的情况下,在虚拟环境中安装软件包。首先需要配置 环境 需要安装 cuda。在虚拟环境下安装 pytorch。
2023-05-19 18:39:35 11229
原创 20230516我的创作纪念日
19年毕业,已经4年了,时间过得真快呀,还记得大学毕业刚开始做php,做web,那时候学习jq,bootstrap,做前端,那时候最得意的时大概是用js写了树状目录吧。java学得很多但做出来东西很少,所以后来就用python了,人生苦短选择python哈哈哈,本来中途也想学习安全,但想了想还是觉得创造更有意思哈哈哈。之后就换java工作了作为web后端,不过java我一直学不进去,大概因为太严格了吧,我个人以前使用php所以基础就不行,向上也不知道怎么向上。平时就敲敲代码,看看书,做一些有趣的项目。
2023-05-16 18:55:36 406
原创 1.4 深度神经网络 与 卷积神经网络分别实现图像识别 (TensorFlow )
【代码】1.4 深度神经网络 与 卷积神经网络分别实现图像识别 (TensorFlow )
2023-05-05 00:00:00 96
原创 1.3 什么是卷积与池化,卷积神经网络 (TensorFlow )
在池化,压缩图片信息但不丢失特征,使得计算更加迅速。先通过 滤波器来使图片的特征更加明显。
2023-05-03 01:41:37 171
原创 1.1 机器学习是什么(TensorFlow )
比起传统的代码,我们不需要公式来计算结果,这对复杂的模型结构很有帮助。因为有时候人们也不知道具体的公式。但机器学习则是给大量的输入结果和输出结果,让机器自己得出大概率公式,然后我们输入参数x,计算出y。一般计算的话,都是敲代码敲公式来计算结果,比如 y = 2x-1,当给入参数x,计算出y。
2023-04-29 23:37:51 144
原创 Anaconda3 安装 Tensorflow-gpu
GPU版本,需要提前下载 cuda 和 cuDNN。安装 Tensorflow-gpu 的2.10.0版本。可以查看 Tensorflow-gpu有哪些版本。GPU 一般是 nvidia 的。查看环境,可以看到环境已创建**
2023-04-27 20:32:09 1774
原创 Window10搭建GPU环境(CUDA、cuDNN)
然后把里面的三个文件夹里的文件(注意,是文件)复制到CUDA安装文件夹(就是上面的 CUDA Development 的那个安装路径下)的对应文件夹内。1 登录网站,注册账号,注册完成后才可以下载cuDNN。因为我是11.7所以我下载11.7的CUDA。1.右键点击会出现nvidia 控制面板。下图的 CUDA 版本是11.7。方法二,点击 NVIDIA的图标。根据不同系统,不同需求来下载。下载完后安装,都默认就ok了。安装完后,查看是否安装成功。到官网下载根据不同的版本。
2023-04-27 18:10:43 2310
原创 【社区图书馆】Fluent Python
Fluent Python》从语言设计实现层面给你一些解释,这本书会对这些细节剖析的很到位,还会告诉你一些不踩不能理解的坑儿的成因和解决办法。其他大部分书都是在告诉你「应该这么写,这样用就对了,这样代码性能更高…」,但是没人告诉你为什么?这是一本从初级python到中级python的书籍,能很好得过度到高级python开发。
2023-04-23 22:26:36 475
原创 python 的 object 与type的关系
目前看到的类型对象是一个半成品,有一部分成员属性是在解释器启动之后再进行动态完善的。PyBaseObject_Type 位于 Object/object.c 中,
2023-04-23 00:00:51 824
原创 pip 安装 TensorFlow以及在vscode使用
最好先创建一个虚拟环境,因为如果在同一环境,升级某一个包可能会导致另一个包无法使用,比如 a的包是1.0,b的包是1.0依赖a的1.0,然后a升级为1.1,b可能无法使用。在不影响主机系统设置的情况下,在虚拟环境中安装软件包。2.输入“解释器”,选择"python:选择解释器"1.按下"ctrl+shift+p"调出命令面板。假如 pip 安装速度慢,可以使用镜像安装。虚拟环境下安装 TensorFlow。
2023-04-14 23:56:11 1924
原创 Astro 显示“Network: use --host to expose”,无法访问
2、在 astro.config.mjs 文件中增加server选项配置,server中配置host内容。1、将package.json中的启动项中的dev和serve增加–host参数。因为 Astro 也使用 Vite技术。所以跟vue解决方法 差不多。
2023-04-05 23:33:16 549 1
原创 升级node.js
安装最后版本(注意操作系统,版本太新,操作系统太旧node可能运行不了)查看当前版本node -v,下面表示已切换成功。安装指定版本(8.11.3)切换nodejs版本。
2023-04-05 21:35:08 181
原创 centos7 安装node.js
一.使用 ln -s 命令,原理跟windows 快捷键差不多。方法二:通过wget下载到本地目录(推荐)方法一:下载到本地后上传到服务器。wget 使用http下载。建立全局变量(两种方式)
2023-04-05 21:20:43 1925
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人