摘要:
年轻时写代码好追求速度,追求新技术,追求快速交付。但这样的软件往往会有质量问题,交付后不断调试不断修复,虽然软件修改是难免的,但要尽量减少次数,因为这会严重影响软件的体验。最坏的体验就是软件不断出错,所以有时宁愿慢一点,土一点也不要给软件引入风险。 另外快餐式的代码一般没有重用的价值,很多人会有这样 阅读全文
摘要:
netty 是异步通过事件机制来发送和接收信息的。但如果是请求-响应的模块就需要将netty修改为同步调用的方式。 具体思路是: 1、在往通道里写数据时,在通道里通过setAttachment的方式往里面添加锁(CountDownLatch) 此时线程会被阻塞 2、在处理器(handle)里接收到返 阅读全文
摘要:
一、多返回值 例如 :s,e = string.find('test','t') 执行print(s,e),会得到结果1 1 那这时我们怎么使用这个执行结果呢? 其实s与e都是一个变量,所以你可以print(s)或print(e)就能分别看到对应的结果 二、可变参数 1、函数声明 function 阅读全文
摘要:
一、RpcException: Failed to invoke the method 1、方法参数是否实现了可序列化接口(Serializable) 2、服务端是否已有实现类,通常既是服务提供者又是消费者的应用会容易犯这种错误,因为spring初始化时没有报出没有实现类的异常。 二、Please 阅读全文
摘要:
架构的功能性要求有:吞吐量、稳定性、业务性等。这些都是架构的基本要求。 那么架构的非功能性要求有哪些呢? 从实践中发现,好的架构有以下这些常见的非功能性要求 一、优雅的代码 1、不产生NULL对象,不需要作NULL对象判断。 代码中最常见的代码可能是在使用对象前要先对对象作非NULL的判断,特别是业 阅读全文
摘要:
linux的很多指令其实就是一个工具软件,只不过与windows不同的是它没有界面,操作不是用鼠标,而是用命令而已。同样的功能,各类工具会很多,就像windows一样,只要精通每类功能的一两个工具就行。 一、分析CPU 常用工具列举下:ps、top、iostat、vmstat、mpstat、sar 阅读全文
摘要:
一、分析目标用户与行业 找出它们的需求点,问题点和痛点。先去分析再来谈方案,产品不能靠猜或人云亦云。 二、思考解决方案 1、可参考现有产品的一些解决思路,要带着问题去看别人的产品,看别人是怎样解决这些问题的,是不是真正的解决了问题,还有哪些没解决。 2、不能一味照抄,上来就抄,不去分析,不去思考。这 阅读全文
摘要:
刚开始工作时,可能会用很多技术,知道很多技术就好像是很了不起的了。 但工作久了之后,如果还是只停留在知识的表面,技术只知个大概,那就显得太肤浅了。 别被人问倒,什么东西都能说出个一二,那才是真有底气。 可能你依然是好学的,依然是看很多书,很多资料,那为什么不再牛了呢?终归到底还是学习的方法错了,如果 阅读全文
摘要:
探索型人才指的是能从公司的战略出发,从市场出发,思考公司产品的出路或转型。这个角色一般是公司上层领导在做的事情。但在基层员工身上需不需要这样的角色呢? 我觉得是需要的,但又不单纯是一个思考者、决策者的角色。他需要承担着上能连接上层领导的战略意图,下能将战略意图落地的角色。所谓的战略意图落地就是你的所 阅读全文
摘要:
一、配置示例与说明 二、配置说明 1、子节点<appender> 负责写日志的组件,它有两个必要属性name和class。name指定appender名称,class指定appender的全限定名 1)ConsoleAppender 把日志输出到控制台,有以下子节点: <encoder>:对日志进行 阅读全文