SS Command Posted on 2017-01-07 Edited on 2020-04-18 bbr yum install -y git yum install -y vim wget --no-check-certificate https://github.com/teddysun/across/raw/master/bbr.sh chmod +x bbr.sh ./bbr.sh Read more »
git command Posted on 2017-01-07 Edited on 2020-04-18 git常用命名汇总1. First-Time Git Setup git config -l git config --global user.name "your name" git config --global user.email xxx@example.com git config --global color.ui true git config core.ignorecase false ##设置大小写敏感 Read more »
常用开发环境安装配置 Posted on 2017-01-06 Edited on 2020-04-18 nodejs:123#set for nodejs export NODE_HOME=/usr/local/node-v.6.x export PATH=$NODE_HOME/bin:$PATH Read more »
2016 Summary Posted on 2017-01-05 Edited on 2020-04-18 技术 并发-多线程,线程池。在保证效率的情况下不要轻易使用多线程。多线程不可控,黑盒运行。Guava异步回调可以根据实际场景适当的运用。JVM内存模型和运行机制(类加载机制)需要加强。 Redis 缓存的使用,能够进行缓存的数据结构设计。String,List,Queue,HashMap,Set。 缓存设计,根据不同的应用场景设计不同的缓存方案。String数据结构和HashMap数据结构需要区分,很多场景既能使用String,又能使用HashMap。这种情况使用String往往会产生大量的Key值,使用HashMap又不便于扩展,取值复杂。需要合理选择。 缓存淘汰策略,当大量读写数据库和缓存时,采取合理的缓存淘汰策略能够避免脏数据的产生,也能减少缓存miss。在多线程读写数据库Save Or Update时,处理不当会造成主键重复异常等,缓存会产生脏数据,采用先淘汰缓存后更新数据库。(先淘汰后更新,PubSub更新,事务隔离前淘汰等。) 数据库事务,数据库事务机制能够保证数据的准确性,操作的原子性。但事务运用的不当时,会造成代码运行速度下降,系统负担加大。目前Web项目中,数据库事务机制大多由Spring管理,Spring Aop对事务的切入点不对会造成大片的代码段锁死。 RPC框架,模块之间相互通信框架。是对HTTP的一种封装和优化。目前常用RPC有:Dubbo,Hessian。采用RPC框架可以使各个层之间解耦合(或者最大限度地松耦合)。 MongoDb,一种非关系型(NOSQL)数据库。集合,文档的概念,对于存储json非常方便。 NodeJs
编程思想阅读心得 Posted on 2016-07-20 Edited on 2020-04-18 编程思想阅读心得1.对象入门 建立模型——“知识结构”。 不必强行记住运算符优先级,拿不准时加括号即可。 对象,一切都是对象。控制程序流程、初始化和清除、隐藏实现过程、类再生、多形性、对象的容纳、违例差错控制、Java IO系统、运行期类型鉴定、传递和返回对象、创建窗口和程序片、多线程、网络编程、设计方范式。 多线程,独立运行的片段叫作“线程”,利用它编程的概念就叫作“多线程处理”。 C++和Java都是杂合语言,多重编程风格。 Read more »
Java基础 Posted on 2016-06-21 Edited on 2020-04-18 Java能力提升计划主要以J2EE为主线,摆脱迷茫和随波逐流这篇文章一定要好好维护,不能copy网上的内容,专表达自己的见解 TODO List Learning English 阅读spring源码 提高Java知识(基础知识和J2EE相关) 读书 目前急需提高的技术能力:DI,多线程,ORM映射框架 Read more »
JavaWeb面试题 Posted on 2016-05-15 Edited on 2020-04-18 Java及Web服务器 Java中数据类型的长度?可选这以下类型提问:Int 4、short 2、long 8、byte 1、float 4、double 8、char 2、boolean 1 int和Integer的区别?Java是一个近乎纯洁的面向对象编程语言,但是为了编程的方便还是引入了基本数据类型,但是为了能够将这些基本数据类型当成对象操作,Java为每一个基本数据类型都引入了对应的包装类型(wrapper class),int的包装类就是Integer,从Java 5开始引入了自动装箱/拆箱机制,使得二者可以相互转换。Java 为每个原始类型提供了包装类型:原始类型——boolean,char,byte,short,int,long,float,double包装类型——Boolean,Character,Byte,Short,Integer,Long,Float,Double String s = new String(“xyz”);创建了几个String Object?二者之间有什么区别?两个或一个,“xyz”对应一个对象,这个对象放在字符串常量缓冲区,常量”xyz”不管出现多少遍,都是缓冲区中的那一个。New String每写一遍,就创建一个新的对象,它一句那个常量“xyz”对象的内容来创建出一个新String对象。如果以前就用过“xyz”,这句代表就不会创建“xyz”自己了,直接从缓冲区拿。 String和StringBuffer的区别JAVA平台提供了两个类:String和StringBuffer,它们可以储存和操作字符串,即包含多个字符的字符数据。这个String类提供了数值不可改变的字符串。而这个StringBuffer类提供的字符串进行修改。当你知道字符数据要改变的时候你就可以使用StringBuffer。典型地,你可以使用StringBuffers来动态构造字符数据。另外,String实现了equals方法,new String(“abc”).equals(newString(“abc”)的结果为true,而StringBuffer没有实现equals方法,所以,new StringBuffer(“abc”).equals(newStringBuffer(“abc”)的结果为false。 Read more »