前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >我差不多,哦不我已经是个废人了No.4

我差不多,哦不我已经是个废人了No.4

作者头像
大蕉
发布2018-02-05 17:02:46
5730
发布2018-02-05 17:02:46
举报

我是小蕉。

好吧大家都说技术看不懂,那好吧,今天一点技术都没有,主要谈谈一个人来如何懒起来。

前几日因为要部署一个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。

public class BlowUpJVM {
private static List<String> list = new ArrayList<String>();
public static void main(String[] args) {
    testStackOverFlow(); //栈深度溢出
    testOutOfHeapMemory();//堆溢出
    testNativeMethodOutOfMemory();//本地方法栈溢出
    //这个别跑!!!会死机的!!!别问我怎么知道的。
    //testStackOutOfMemory();
}
public static void testNativeMethodOutOfMemory(){
while(true){
ExecutorService executors = Executors.newFixedThreadPool(50);
int i=0;
 while(i++<10){
    executors.submit(new Runnable() {
        @Override public void run() {}
        });
        }
    }
}
public static void testStackOutOfMemory(){
    while (true) {  
    Thread thread = new Thread(new Runnable() {
    @Override 
 public void run() {while(true){}}  
             });  
 thread.start();  
     }  
} 
public static void testOutOfHeapMemory(){
List<StringBuffer> list = new ArrayList<StringBuffer>();
while(true){
  list.add(new StringBuffer(););
    }
}
public static void  testStackOverFlow(){
    BlowUpJVM.testStackOverFlow();
}
}
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-03-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 一名叫大蕉的程序员 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档