System优化
从系统方面考虑,性能通常取决于connection的连接效率和Integration Service所在机器的负荷程度,常见的原因有:
多用户同时使用
不同的网络协议
网络上有多个路由及转换
源和目标数据库的I/O效率低
源和目标文件系统的I/O效率低
domain内node的I/O效率低
通常在如下方面进行优化:
1 提高网速
通过monitor检测网速是否正常,若不正常可考虑以下几种方式:
1) 如果session使用数据库作为源或目标,可减少Integration Service和目标及源的网络跳数,也可将数据库迁往服务器系统
2) 如果session使用文件作为源或目标,且Integration Service在单个节点上运行,可将文件存储在与Integration Service相同机器上
因为本地访问的速度通常是网络访问的5-20倍
如果文件是在其他的服务器上,则需要通过网络进行访问,而网络的好坏是会影响到性能的
因此,针对这种情况,可先将文件传到Integration Service所在机器上并增加磁盘空间,然后在运行session
3) 如果session包含多个分区,需确保网络有足够的带宽处理整个网络范围内的来自个分区的数据传输
2 使用多CPU
多CPU可让多个session及管道分区同时运行
但是,多CPU会导致I/O方面的问题,因为多CPU可使多个session及管道分区同时进行,如果它们都要进行I/O处理的话会降低整体的I/O效率
因此,要适当减少需要同时进行I/O操作的session及管道分区的数量
3 减少分页
当物理内存不足时,操作系统会进行分页操作。减少分页操作会减少系统的I/O操作
可增加物理内存或释放内存,内存的使用情况可通过系统工具进行监控
通常在下列情况下需要增加内存:
1) session中使用了需要大缓存的组件,如lookup
2) session使用了多个分区
4 使用CPU绑定
在多CPU的UNIX操作系统环境中,Integration Service使用了大量的系统资源。可通过CPU绑定来控制Integration Service对系统资源的使用
因为会导致在同一台机器的其他应用内存不足
如果目标或源数据库也在Integration Service所在的服务器,可使用CPU绑定来限制数据库所使用的资源
不同的操作系统有不同的命令行操作来进行CPU绑定,具体请参照个操作系统的官方文档
System优化的更多相关文章
- hbase definitive guide 笔记
ext3 file system 优化 ext3 在用在hbase上可以做如下优化: 1. mount的时候加上noatime选项.这可以减少管理开销 2. 用命令tune2fs -m 0 /dev/ ...
- C#、.Net代码精简优化(空操作符(??)、as、string.IsNullOrEmpty() 、 string.IsNullOrWhiteSpace()、string.Equals()、System.IO.Path 的用法)
一.空操作符(??)在程序中经常会遇到对字符串或是对象判断null的操作,如果为null则给空值或是一个指定的值.通常我们会这样来处理: .string name = value; if (name ...
- Spring+SpringMVC+MyBatis+easyUI整合优化篇(一)System.out.print与Log
日常啰嗦 距离上一次更新博客有一段时间了,主要是因为最近有开发任务,另外,这段时间也在学习docker的相关知识,所以博客就没有继续写了,推荐一本书<Docker技术入门与实战>(第二版) ...
- System Generator 参数优化
System Generator 参数优化 通过命令行调试参数 然后编译,查看资源消耗.
- Spring+SpringMVC+MyBatis+easyUI整合优化篇(一)Java语言中System.out.print与Log的比较
作者:13 GitHub:https://github.com/ZHENFENG13 版权声明:本文为原创文章,未经允许不得转载. 前言 距离上一次更新博客有一段时间了,主要是因为最近有开发任务,另外 ...
- 高并发场景下System.currentTimeMillis()的性能问题的优化 以及SnowFlakeIdWorker高性能ID生成器
package xxx; import java.sql.Timestamp; import java.util.concurrent.*; import java.util.concurrent.a ...
- 高并发场景下System.currentTimeMillis()的性能问题的优化
高并发场景下System.currentTimeMillis()的性能问题的优化 package cn.ucaner.alpaca.common.util.key; import java.sql.T ...
- 雪花算法对System.currentTimeMillis()优化真的有用么?
前面已经讲过了雪花算法,里面使用了System.currentTimeMillis()获取时间,有一种说法是认为System.currentTimeMillis()慢,是因为每次调用都会去跟系统打一次 ...
- Entity Framework优化一:引发了“System.Data.Entity.Core.EntityCommandExecutionException”类型的异常
错误信息: “System.Data.Entity.Core.EntityCommandExecutionException”类型的异常在 EntityFramework.SqlServer.dll ...
随机推荐
- Mysql数据库使用量查询及授权
Mysql数据库使用量查询及授权 使用量查询 查看实例下每个库的大小 select TABLE_SCHEMA, concat(truncate(sum(data_length)/1024/1024,2 ...
- nginx服务器的基本配置
nginx作为反向代理搭建服务器的优点. 处理响应请求很快:单次请求会得到更快的响应.在高峰期,Nginx 可以比其它的 Web 服务器更快的响应请求 高并发连接:理论上,Nginx 支持的并发连接上 ...
- python之路day04--列表的增删改查,嵌套、元组的嵌套、range、for循环嵌套
列表增删改查 增加 append li = ['taibai','zy','nvshen'] li.append('aa') print(li) #['taibai', 'zy', 'nvshen', ...
- Qt: 非阻塞时间延迟;
1.使用时间耗损循环: #include <QTime> ... QTime delayTime = QTime::currentTime().addMSecs(1000); while( ...
- kubernetes云平台管理实战: 服务发现和负载均衡(五)
一.rc控制器常用命令 1.rc控制器信息查看 [root@k8s-master ~]# kubectl get replicationcontroller NAME DESIRED CURRENT ...
- solr面板的使用
创建数据库 先别着急点击Add Core,先去目录下创建几个文件. 去solrhome目录下创建一个文件夹,比如test,这个文件夹就是数据库文件夹.
- 第八节: Quartz.Net五大构件之SimpleThreadPool及其四种配置方案
一. 简介 揭秘: SimpleThreadPool是Quartz.Net中自带的线程池,默认个数为10个,代表一个Scheduler同一时刻并发的最多只能执行10个job,超过10个的job需要排队 ...
- SpringBoot系列: JdbcTemplate 快速入门
对于一些小的项目, 我们没有必要使用MyBatis/JPA/Hibernate等重量级技术, 直接使用Spring JDBC 即可, Spring JDBC 是对 jdbc的简单封装, 很容易掌握. ...
- SSH HTTP代理
SSH 连接 参照https://stackoverflow.com/questions/19161960/connect-with-ssh-through-a-proxy 若要使用goflyway连 ...
- JavaScript生成斐波那契数列
常规写法 https://cn.bing.com/search?q=js+fibonacci+sequence&pc=MOZI&form=MOZSBR //Fibonacci func ...