如何進(jìn)行性能調(diào)優(yōu) HttpClient對(duì)高并發(fā)有什么優(yōu)化嗎?
HttpClient對(duì)高并發(fā)有什么優(yōu)化嗎?1、集群 負(fù)載均衡分流; 2、寫(xiě)并發(fā)程序,針對(duì)硬件調(diào)整到最優(yōu); 3、數(shù)據(jù)庫(kù)采用主從復(fù)制讀寫(xiě)分離 集群方式; 4、按某個(gè)規(guī)則,分別存儲(chǔ)數(shù)據(jù),比如按照按車(chē)站,鐵路
HttpClient對(duì)高并發(fā)有什么優(yōu)化嗎?
1、集群 負(fù)載均衡分流;
2、寫(xiě)并發(fā)程序,針對(duì)硬件調(diào)整到最優(yōu);
3、數(shù)據(jù)庫(kù)采用主從復(fù)制讀寫(xiě)分離 集群方式;
4、按某個(gè)規(guī)則,分別存儲(chǔ)數(shù)據(jù),比如按照按車(chē)站,鐵路局,車(chē)次等拆分;
5、定期數(shù)據(jù)歸檔,只要過(guò)期的數(shù)據(jù)立馬歸檔;
6、優(yōu)化查詢語(yǔ)句,如果用mysql甚至數(shù)據(jù)庫(kù)引擎都需要改寫(xiě);
7、詳細(xì)測(cè)試高并發(fā)系統(tǒng)運(yùn)行情況,作出調(diào)優(yōu)方案;
8、寫(xiě)程序的時(shí)候,多花一個(gè)cpu周期都需要認(rèn)真考慮;
9、把應(yīng)用拆分,做成分布式 集群;
10、分析熱點(diǎn)數(shù)據(jù),使用緩存加快查詢寫(xiě)入效率。 12306如果把服務(wù)器放在一起,對(duì)硬件要求應(yīng)該都不低,可以使用64,96,128核心cpu,300G到1T的內(nèi)存。存儲(chǔ)性能,網(wǎng)絡(luò)帶寬要求也極高??偟脑O(shè)計(jì)思路是把大數(shù)據(jù),難點(diǎn),拆分成可控的小的,簡(jiǎn)單的點(diǎn)。這種系統(tǒng)按淘寶思路做,網(wǎng)絡(luò)架構(gòu)會(huì)很復(fù)雜。聽(tīng)說(shuō),后來(lái)阿里工程師優(yōu)化的。
jvm性能調(diào)優(yōu)都做了什么?
JVM性能調(diào)優(yōu)有很多設(shè)置,這個(gè)參考JVM參數(shù)即可. 主要調(diào)優(yōu)的目的: 控制GC的行為.GC是一個(gè)后臺(tái)處理,但是它也是會(huì)消耗系統(tǒng)性能的,因此經(jīng)常會(huì)根據(jù)系統(tǒng)運(yùn)行的程序的特性來(lái)更改GC行為 控制JVM堆棧大小.一般來(lái)說(shuō),JVM在內(nèi)存分配上不需要你修改,(舉例)但是當(dāng)你的程序新生代對(duì)象在某個(gè)時(shí)間段產(chǎn)生的比較多的時(shí)候,就需要控制新生代的堆大小.同時(shí),還要需要控制總的JVM大小避免內(nèi)存溢出 控制JVM線程的內(nèi)存分配.如果是多線程程序,產(chǎn)生線程和線程運(yùn)行所消耗的內(nèi)存也是可以控制的,需要通過(guò)一定時(shí)間的觀測(cè)后,配置最優(yōu)結(jié)果
如何通過(guò)添加新的數(shù)據(jù)文件來(lái)增加表空間容量從而實(shí)現(xiàn)性能調(diào)優(yōu)?
由于磁盤(pán)空間的變化O性能的調(diào)整等,或者基于數(shù)據(jù)庫(kù)磁盤(pán)I/,控制文件和聯(lián)機(jī)日志文件三種文件組成。 可以用alter database,ALTER TABLESPACE兩種方法移動(dòng)數(shù)據(jù)文件在oracle中移動(dòng)數(shù)據(jù)庫(kù)文件 oracle數(shù)據(jù)庫(kù)由數(shù)據(jù)文件,數(shù)據(jù)庫(kù)管理員可能會(huì)考慮移動(dòng)數(shù)據(jù)庫(kù)文件