首页 文章 精选 留言 我的

精选列表

搜索[设置],共10023篇文章
优秀的个人博客,低调大师

ES线程池设置

每个Elasticsearch节点内部都维护着多个线程池,如index、search、get、bulk等,用户可以修改线程池的类型和大小,线程池默认大小跟CPU逻辑一致 一、查看当前线程组状态 curl -XGET 'http://localhost:9200/_nodes/stats?pretty' "thread_pool" : { "bulk" : { "threads" : 32, "queue" : 0, "active" : 0, "rejected" : 0, "largest" : 32, "completed" : 659997 }, "index" : { "threads" : 2, "queue" : 0, "active" : 0, "rejected" : 0, "largest" : 2, "completed" : 2 } 上面截取了部分线程池的配置,其中,最需要关注的是rejected。当某个线程池active==threads时,表示所有线程都在忙,那么后续新的请求就会进入queue中,即queue>0,一旦queue大小超出限制,如bulk的queue默认50,那么elasticsearch进程将拒绝请求(碰到bulk HTTP状态码429),相应的拒绝次数就会累加到rejected中。 解决方法是 1、记录失败的请求并重发 2、减少并发写的进程个数,同时加大每次bulk请求的size 二、核心线程池 index:此线程池用于索引和删除操作。它的类型默认为fixed,size默认为可用处理器的数量,队列的size默认为300。 search:此线程池用于搜索和计数请求。它的类型默认为fixed,size默认为可用处理器的数量乘以3,队列的size默认为1000。 suggest:此线程池用于建议器请求。它的类型默认为fixed,size默认为可用处理器的数量,队列的size默认为1000。 get:此线程池用于实时的GET请求。它的类型默认为fixed,size默认为可用处理器的数量,队列的size默认为1000。 bulk:此线程池用于批量操作。它的类型默认为fixed,size默认为可用处理器的数量,队列的size默认为50。 percolate:此线程池用于预匹配器操作。它的类型默认为fixed,size默认为可用处理器的数量,队列的size默认为1000。 三、线程池类型 1、cache 无限制的线程池,为每个请求创建一个线程 2、fixed 有着固定大小的线程池,大小由size属性指定,允许你指定一个队列(使用queue_size属性指定)用来保存请求,直到有一个空闲的线程来执行请求。如果Elasticsearch无法把请求放到队列中(队列满了),该请求将被拒绝 四、修改线程池配置 1、elasticsearch.yml threadpool.index.type: fixed threadpool.index.size: 100 threadpool.index.queue_size: 500 2、Rest API curl -XPUT 'localhost:9200/_cluster/settings' -d '{ "transient": { "threadpool.index.type": "fixed", "threadpool.index.size": 100, "threadpool.index.queue_size": 500 } }' 五、bulk异常排查 使用es bulk api时报错如下 EsRejectedExcutionException[rejected execution(queue capacity 50) on.......] 这个错误明显是默认大小为50的队列(queue)处理不过来了,解决方法是增大bulk队列的长度 elasticsearch.yml threadpool.bulk.queue_size: 1000 相关文档 https://www.elastic.co/guide/en/elasticsearch/reference/current/cluster-nodes-stats.html https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-threadpool.html 本文转自张昺华-sky博客园博客,原文链接:http://www.cnblogs.com/bonelee/p/7840629.html,如需转载请自行联系原作者

优秀的个人博客,低调大师

Jupyter Notebook - 设置目录、HelloWorld

===Jupyter Notebook === 安装完Anaconda后可以使用Jupyter Notebook工具进行开发 路径如下: 路径 === 改变项目目录 === 1、 cmd命令行下输入:jupyter notebook --generate-config 会提示是否重新配置文件 Overwrite C:\Users\Gorde\.jupyter\jupyter_notebook_config.py with default config? [y/N]n 2、 找到并打开,找到jupyter_notebook_config.py文件中 c.NotebookApp.notebook_dir = u'D:\\ai_job'改成自己的项目路径,最好不要用中文。句首‘#’是注释的意思,要去掉。 3、 如果改完后还不能进入自己的项目,找到Jupyter Notebook应用程序,点击属性,修改目标:D:\Users\Anaconda3\python.exe D:\Users\Anaconda3\cwp.py D:\Users\Anaconda3 "D:/Users/Anaconda3/python.exe" "D:/Users/Anaconda3/Scripts/jupyter-notebook-script.py" 将%后的内容删掉。最后对属性保存应用即可。如下图所示: Jupyter Notebook属性 = 如何编写和运行代码 = 1、 new一个Python文件 2、 运行当前块代码 ctrl+enter 3、 运行当前块,并新增一块 shift+enter Hello World 注意: 如果页面卡住不动了,在命令行中巧一下回车即可恢复运行。

优秀的个人博客,低调大师

如何设置 Kubernetes 资源限制

Kubernetes 作为当下最流行的的容器集群管理平台,需要统筹集群整体的资源使用情况,将合适的资源分配给pod容器使用,既要保证充分利用资源,提高资源利用率,又要保证重要容器在运行周期内能够分配到足够的资源稳定运行。 配置容器资源限制 对于一个pod来说,资源最基础的2个的指标就是:CPU和内存。Kubernetes提供了个采用requests和limits 两种类型参数对资源进行预分配和使用限制。limit 会限制pod的资源利用: 当pod 内存超过limit时,会被oom。 当cpu超过limit时,不会被kill,但是会限制不超过limit值。 测试内存限制 部署一个压测容器,压测时会分配250M内存,但实际pod的内存limit为100Mi apiVersion: v1 kind: Pod metadata: name: me

优秀的个人博客,低调大师

Docker国内镜像源设置

编辑json文件,添加如下内容后重启docker即可。 [root@Docker ~]# cat /etc/docker/daemon.json{ "registry-mirrors":["http://18817714.m.daocloud.io"]} 说明:json配置文件中添加内容指定了拉取镜像的地址,此地址由daocloud提供。若服务无法正常启动,排查添加内容是否正确! ------------------------------------------------------------- 作者: 罗穆瑞 出处: http://www.cnblogs.com/kazihuo/ 转载请保留此段声明,且在文章页面明显位置给出原文链接,谢谢! ------------------------------------------------------------------------------ 如果觉得这篇文章对你有小小的帮助的话,记得在右下角点个“推荐”哦,博主在此感谢! ------------------------------------------------------------------------------

资源下载

更多资源
优质分享App

优质分享App

近一个月的开发和优化,本站点的第一个app全新上线。该app采用极致压缩,本体才4.36MB。系统里面做了大量数据访问、缓存优化。方便用户在手机上查看文章。后续会推出HarmonyOS的适配版本。

Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。