我是小蕉。
好吧大家都說技術看不懂,那好吧,今天一點技術都沒有,主要談談一個人來如何懶起來。
前幾日因為要部署一個ElasticSearch集群,雖然只有三臺。但是,我就是不想一臺一臺去部署啊,煩死個人了。萬一后面要部署1000臺,那可要怎么辦??真心一臺一臺去處理咩。我懶得要命,我才懶得這樣干。 就抽象一下,提煉出一個垃圾批量部署的法子。安裝包準備->環境準備->安裝包上傳解壓->配置變更->啟動服務器。看起來也就長這樣,一個shell腳本搞定,雖然花了半天的時間,但是在后面操作其他機器的時候,發現三臺機器的集群扛不住,我在不到三分鐘內,就把集群擴展到了六臺,不黑不吹,真人真事。
這大概是當一個程序猿最大的好處了吧,能搞一些小工具來提高生活的效率,其實從好幾年前就一直在想,不要因為技術而技術,技術是為業務服務的。編程從根本上就是為提高生產效率而產生的,之前一直在想跨界的事情,生物學家加編程,音樂家加編程,書法家加編程,會變成什么?我能夠預感到的事情,就是他們可能會從一個我們普通人想都想不到的角度,去把一個東西產品化,可能提供給大眾,也提高了自己研究的效率。
人的本質還是不勤快的。
每天都做同一樣事情,估計會瘋掉把。懶人瓦特發明了蒸汽機,不就是懶得每次水開的時候都去打開蓋子放氣嗎?其實吧我們做的很多事情都是懶,比如技術的快速實現是懶,是為了現在可以解決問題早點回家老婆孩子熱炕頭,王者守望LOL。比如代碼的重構是懶,是為了實現第二個類似需求的時候可以少一點工作。我們在做這些東西的時候其實還真不是因為為了表現出勤快。
舉個栗子,我想要勤快的話,比如打印十行的“人群之中鉆出來一個光頭”,我可以這樣。
System.out.println("人群之中鉆出來一個光頭");
System.out.println("人群之中鉆出來一個光頭");
System.out.println("人群之中鉆出來一個光頭");
System.out.println("人群之中鉆出來一個光頭");
System.out.println("人群之中鉆出來一個光頭");
System.out.println("人群之中鉆出來一個光頭");
System.out.println("人群之中鉆出來一個光頭");
System.out.println("人群之中鉆出來一個光頭");
System.out.println("人群之中鉆出來一個光頭");
System.out.println("人群之中鉆出來一個光頭");
煩死個人了,寫得我手都酸了,但是我就是不想寫我就是要想偷懶我要怎么做呢?就像下面這樣去思考,去總結,去想辦法。喏。
int i = 10;
while(i-->0){
System.out.println("人群之中鉆出來一個光頭");
}
還有就是大家都說程序猿的工資為什么這么高,這是什么原因。臥槽,我覺得這個問題可以換一下->為什么除了我以外的程序猿工資為什么這么高。我看過的一句話啊,可能是最好的回答。勞動人員在工作的時候,按照件數創造物品,或者各種單子促成交易,他們一旦下班那就沒他們什么事了。但是程序猿,即使我們下班了,程序依然在跑著,依然在提供各種各樣的服務,創造各種各樣的價值,我覺得這就是對為什么程序猿工資這么高的原因了,這也是人類一直追尋的提高效率。
前方高能,非戰斗人員迅速撤離撤離。
好了我不寫了我手好酸,貼點代碼,下面是我搞死我虛擬機的工具,886。
publicclassBlowUpJVM {
privatestaticListlist=newArrayList();
publicstaticvoidmain(String[]args) {
testStackOverFlow();//棧深度溢出
testOutOfHeapMemory();//堆溢出
testNativeMethodOutOfMemory();//本地方法棧溢出
//這個別跑!!!會死機的!!!別問我怎么知道的。
//testStackOutOfMemory();
}
publicstaticvoidtestNativeMethodOutOfMemory(){
while(true){
ExecutorServiceexecutors= Executors.newFixedThreadPool(50);
inti=0;
while(i++<10){
executors.submit(newRunnable() {
@Overridepublicvoidrun() {}
});
}
}
}
publicstaticvoidtestStackOutOfMemory(){
while(true) {
Threadthread=newThread(newRunnable() {
@Override
publicvoidrun() {while(true){}}
});
thread.start();
}
}
publicstaticvoidtestOutOfHeapMemory(){
Listlist=newArrayList();
while(true){
list.add(newStringBuffer(););
}
}
publicstaticvoidtestStackOverFlow(){
BlowUpJVM.testStackOverFlow();
}
}
長按關注或者分享一下我還是很開心的嗯。