Dubbo线程模型(结合Linux线程数限制配置的实战经验分享)
Dubbo官方文档:
用户指南 >> 示例 >> 线程模型
配置标签:
<dubbo:provider/>
<dubbo:protocol/>
实战经验分享(属用性能调优):
Linux用户线程数限制导致的java.lang.OutOfMemoryError: unable to create new native thread 异常
# vi /etc/security/limits.d/90-nproc.conf
# Default limit for number of user's processes to prevent
# accidental fork bombs.
# See rhbz #432903 for reasoning.
root soft nproc unlimited
* soft nproc 20480
调整时要注意:
1、 尽量不要使用root用户来部署应用程序,避免资源耗尽后无法登录操作系统。
2、 普通用户的线程数限制值要看可用物理内存容量来配置
计算方式:
default_nproc = total_memory/128K;
$ cat /proc/meminfo |grep MemTotal
$ echo "5993104 / 128"| bc
$ ulimit -u
ulimit -a # 显示目前资源限制的设定
ulimit -u # 用户最多可开启的程序数目
重启,使之生效:# reboot
资源:http://www.roncoo.com/course/view/85d6008fe77c4199b0cdd2885eaeee53
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
处理微服务架构的内部架构和外部架构
关键点 微服务架构MSA并不是一个全新的概念,它旨在通过使用现代技术的优点来正确地实现SOA。 微服务只能解决整体问题的一小部分——架构师们需要将微服务架构作为一种架构实践,并实现它以满足企业级应用要求。 “微”不仅仅只是关注大小,它主要是关注范围。 整合是微服务架构的一个关键方面,在适用时,它可以作为微整合来实施。 迭代式的方法可以帮助组织从其当前状态转换到一个完整的微服务架构。 今天的企业里内容范围非常广,包括服务、传统应用程序和数据等等,这由一系列的消费渠道为首,包括桌面、网站和移动应用等。但是,通常情况下,由于没有一个被以适当的方式创建和系统化地管理的集成层,会出现断层,这些消费渠道需要有这样的集成层来使能业务功能。大多数企业正在通过面向服务的架构(Service-Oriented aArchitecture,SOA)来应对这一挑战。在面向服务的架构中,应用程序组件通过网络上的通信协议向其他组件提供松散耦合的服务。最终,它的意图是让微服务架构可以更灵活和更容易地扩展。虽然没有充分地准备好采用微服务架构,但是这些组织正在规划架构并实现企业应用和服务平台,使他们可以逐步走向微服务架...
- 下一篇
jeesz-zookeeper使用场景【别人总结,希望可以帮助到大家】
ZooKeeper典型应用场景一览 数据发布与订阅(配置中心) 发布与订阅模型,即所谓的配置中心,顾名思义就是发布者将数据发布到ZK节点上,供订阅者动态获取数据,实现配置信息的集中式管理和动态更新。例如全局的配置信息,服务式服务框架的服务地址列表等就非常适合使用。 应用中用到的一些配置信息放到ZK上进行集中管理。这类场景通常是这样:应用在启动的时候会主动来获取一次配置,同时,在节点上注册一个Watcher,这样一来,以后每次配置有更新的时候,都会实时通知到订阅的客户端,从来达到获取最新配置信息的目的。 分布式搜索服务中,索引的元信息和服务器集群机器的节点状态存放在ZK的一些指定节点,供各个客户端订阅使用。 分布式日志收集系统。这个系统的核心工作是收集分布在不同机器的日志。收集器通常是按照应用来分配收集任务单元,因此需要在ZK上创建一个以应用名作为path的节点P,并将这个应用的所有机器ip,以子节点的形式注册到节点P上,这样一来就能够实现机器变动的时候,能够实时通知到收集器调整任务分配。 系统中有些信息需要动态获取,并且还会存在人工手动去修改这个信息的发问。通常是暴露出接口,例如JMX...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8安装Docker,最新的服务器搭配容器使用
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS8编译安装MySQL8.0.19
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2整合Redis,开启缓存,提高访问速度
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Hadoop3单机部署,实现最简伪集群
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS6,7,8上安装Nginx,支持https2.0的开启