热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

2015年度总结2016demo年

放在草稿箱很久的总结博客,今天发一下,一是告诉自己要不断总结新的知识点,总结生活。二是要告诉自己博客多久没有写啦,本月要补上

    放在草稿箱很久的总结博客,今天发一下,一是告诉自己要不断总结新的知识点,总结生活。二是要告诉自己博客多久没有写啦,本月要补上啦。不然就感觉自己没有前进反而倒退了。(2016年4月21日23:45:00)。


    2015总结比每年来的晚了一些。

    2015年是逐渐步入正轨的一年,如论是生活上还是工作上,都开始逐渐稳定。


    感谢他人,同时感谢自己,不再玻璃心,收拾行囊,不断前进。引用热播剧《芈月传》,经典台词:“我虽出生王族,却一直被人踩在脚下,一无所有,我不墨守成规,也不怀挟偏见,我既能一掷决生死,又能一笑泯恩仇”,这样的态度和胸襟值得我学习。

    看了看2014的总结,去掉所有的光,剩下那些沉淀的东西,2014的我在告诉自己踏实些。


2015 从技术上

    有时候人需要憋,不憋到一定程度,不恐惧到一定的程度,就不会达到极致。就像那个词,乐极生悲,在技术上恰恰相反,以前会因为担心自己弄不出一个东西害怕着急,现在的自己感觉没有什么是自己弄不出来的,没有什么是自己研究不透的,尤其是越弄不出来越会精神,越会兴奋,总是会山重水复疑无路,柳暗花明又一村。不过还是要念叨一下自己新接触的东西。

    工具

    8月初入职**网,陌生的多,挑战大,我就会很兴奋,之前一直在用myEclipse编译环境开发,来到这边接触到了Intellij,从green hand到old hand,现在已经游刃有余了,哈哈,比myeclipse好用多了。框架上,springMVC+spring + mybatis,MVC,View层使用的模板引擎,一种是freemarker 一种是velocity,初次使用感觉像是自己编了一套jstl的规范,后来慢慢的知道模板引擎让我们彻底的分开视图和业务逻辑层,不会在界面上有任何的java后台代码,使开发人员能更好的分工。有些产品我们用java作为服务端提供接口,客户端可能是android、iso或者html5,不过都大同小异啦。

对于intellij的一些使用小技巧总结博客如下:(勿喷)

    http://blog.csdn.net/column/details/intellijsharp.html

    代码提交工具

    一直用的是Subversion,现在用的是git,在自己本地添加了一个缓冲仓库,这样避免了很多麻烦。此外,intellij的git操作也很强大。

    使用面向服务体系结构(soa)

    使用阿里开源的dubbo,dubbo是一个分布式服务框架,致力于提高性能和透明化的RPC远程服务调用方案,是阿里soa服务化治理方案的核心框架,采用dubbo+zookeeper实现分布式管理。搭建过dubbo客户端和服务器的demo,总结博客如下:

    http://blog.csdn.net/lovesummerforever/article/details/48138393

    http://blog.csdn.net/lovesummerforever/article/details/48180937

    http://blog.csdn.net/lovesummerforever/article/details/48180957

    http://blog.csdn.net/lovesummerforever/article/details/48180971

    http://blog.csdn.net/lovesummerforever/article/details/48975703

    http://blog.csdn.net/lovesummerforever/article/details/48997797

    http://blog.csdn.net/lovesummerforever/article/details/48998667

    http://blog.csdn.net/lovesummerforever/article/details/48998787

    http://blog.csdn.net/lovesummerforever/article/details/49000703

    http://blog.csdn.net/lovesummerforever/article/details/49001091

    当然会有如下问题,dubbo是用在局域网内的吗?可以用于企业之间的接口联调吗?dubbo可以放到公网上吗?dubbo是将大量请求进行分流,从而达到及时处理的目的。而之前不用dubbo,采用spring的rpc,能实现一个生产者对应一个消费者,而一个生产者+生产者复制对用多个消费者。dubbo的底层协议?缺省协议基于netty3.2.2+hessian3.2.1 dubbo超时时间设置?dubbo方法接口是否可以重载?等问题,不可以哦


    缓存技术

    使用redis缓存用户经常访问的数据,可以存储,set,list,hash,String,Object类型。例如对于实时的历史显示,为了减少并发的压力,可以设置较短时间的缓存,这样增加接口的效率。使用redis缓存实现session共享,当用nginx进行负载均衡的时候,用户访问session数据同步是一个问题,采用redis实现session共享,解决用户数据不同步问题。

    当缓存文件过大时,总会出现这样或者那样的问题,缓存时间的设置,内存空间的大小等都需要我们注意。对于上万级,百万级或者千万级的缓存,我们还可以使用SSDB作为大数据的缓存使用,SSDB支持set map kv,list等数结构,用来替代或者与Redis配合存储十亿级别的数据,被众多互联网企业使用。


    数据库负载均衡

    使用360开源的Altas实现mysql数据库负载均衡和读写分离。

    Altas主要功能是,读写分离、从库的负载均衡、IP过滤,Sql语句黑白名单,自动分表。官方文档:http://www.oschina.net/p/atlas/

    说到数据库这,除了读写分离和自动分表,还要注意sql语句,在设计接口时,如何避免业务逻辑复杂的sql,以及sql的优化。

    单元测试

    采用Junit进行接口的单元测试,可以实现简单的单元测试,简单的业务逻辑可以满足开发人员的需求。一个更加灵活的测试是,mock测试,当真实的对象具有不可确定的行为,产生不可预测的效果,(例如股票和天气等)真实对象很难被创建,它的某个行为也很难被触发,这时候可以使用mock对象作为真实对象的替代品,或者和其他开发小组或新的硬件打交道的时候。

当然自己写的接口,可以自行使用jemeter工具进行压测。

    负载均衡

    采用tomcat+nginx负载均衡,采用面向服务器的框架来负载均衡。

    搜索

    普通的搜索,使用sql的搜索,sql语句 select * from table where clumn like '%aa%'; 每次都要去访问数据,从而增加了数据库的访问压力。采用索引,一方面在数据库中添加常用查询字段的索引,另一方面使用第三方搜索引擎机制,使用solr独立企业级搜索应用服务器,用户可以通过http请求,向搜索引擎服务器提交一定格式的xml文件,生成索引;也可以通过http get操作查找请求,并得到xml格式的返回结果。当然,solr服务器有自己的负载均衡机制,我们可以solr+缓存技术同时使用,提高效率。


    多线程

    多线程是指从软件或者硬件上实现多个线程并发执行技术。具有多线程能力的计算机因有硬件支持而能够在同一时间执行多余一个线程,进而提升整体处理性能。那多线程什么时候用呢?多线程适用于cpu有空闲,想提高系统资源的利用率,或者需要异步操作的时候用。在这里使用在批量修改权限,以及某些批量更新上。


    异步操作

    采用rabbitmq异步消息队列,使用场景:项目中一些无需及时返回数据且耗时较多的操作提取出来,进行异步操作,这种异步操作大大节省了服务器的请求响应时间,从而提高了系统的吞吐量。例如,异步更新某些数据,某些写入日志操作等。

2015 其他

    书单

   2015年初看了几本技术类的书,《maven实战》、《jquery权威》、《js权威》,《redis原理》大概翻了一遍,一些非技术类的书,看完了《菜根谭》虽然有些文言文的意思,但是受益匪浅,让我们在姹紫嫣红的世界中沉淀下来。《明朝那些事儿》在地铁上看完了全七册,有意思有意思,推荐的一本很有意思的历史书,明朝的那些皇帝印象最深刻的就是开国皇帝朱元璋了,喜欢他的神威英武,平定四海,性格严明,杀伐决断!朝代的兴衰,个人的荣辱,当局者迷旁观者清啊。《向前一步》讲述的作为女子需要自己争取自己的权利,需要站出来。看完《黄金时代》电影,于是后来买了萧红的《呼兰河传》才发小小学课本上的火烧云片段是来自萧红的呼兰河传,萧红的呼兰河传让我看到在那个冰凉的世界中,她就是那个蜡烛,有光有温暖。最近看的《就当一次路过》短片小说的集合,有几个短片还可以,刺破现实。读书的时光总是那么少大多数的时间都被工作和手机占据着,买了个kindle,2016年,新的开始,不运动就读书。

   

    思想上

    温饱思“淫欲”,想要的多了,自然生活琐碎事就多了,所谓的着急或者说是急功近利,是因为欲望大了。

    改变

    佛说,我不入地狱,谁入地狱,地狱都走过了,到了哪里不是天堂呢?

    总结

    本色做人,角色做事,多总结demo。


推荐阅读
  • 本文详细介绍了Java代码分层的基本概念和常见分层模式,特别是MVC模式。同时探讨了不同项目需求下的分层策略,帮助读者更好地理解和应用Java分层思想。 ... [详细]
  • Python 数据可视化实战指南
    本文详细介绍如何使用 Python 进行数据可视化,涵盖从环境搭建到具体实例的全过程。 ... [详细]
  • 深入解析Struts、Spring与Hibernate三大框架的面试要点与技巧 ... [详细]
  • Web开发框架概览:Java与JavaScript技术及框架综述
    Web开发涉及服务器端和客户端的协同工作。在服务器端,Java是一种优秀的编程语言,适用于构建各种功能模块,如通过Servlet实现特定服务。客户端则主要依赖HTML进行内容展示,同时借助JavaScript增强交互性和动态效果。此外,现代Web开发还广泛使用各种框架和库,如Spring Boot、React和Vue.js,以提高开发效率和应用性能。 ... [详细]
  • 本文详细介绍了如何在Java Web服务器上部署音视频服务,并提供了完整的验证流程。以AnyChat为例,这是一款跨平台的音视频解决方案,广泛应用于需要实时音视频交互的项目中。通过具体的部署步骤和测试方法,确保了音视频服务的稳定性和可靠性。 ... [详细]
  • 用阿里云的免费 SSL 证书让网站从 HTTP 换成 HTTPS
    HTTP协议是不加密传输数据的,也就是用户跟你的网站之间传递数据有可能在途中被截获,破解传递的真实内容,所以使用不加密的HTTP的网站是不 ... [详细]
  • 基于Web的Kafka管理工具Kafkamanager首次访问Web界面的详细配置指南(附图解)
    首次访问Kafkamanager Web界面时,需要对Kafka集群进行配置。这一过程相对简单,用户只需依次点击【Cluster】>【Add Cluster】,按照提示完成相关设置即可。本文将通过图文并茂的方式,详细介绍每一步的配置步骤,帮助用户快速上手Kafkamanager。 ... [详细]
  • 您的数据库配置是否安全?DBSAT工具助您一臂之力!
    本文探讨了Oracle提供的免费工具DBSAT,该工具能够有效协助用户检测和优化数据库配置的安全性。通过全面的分析和报告,DBSAT帮助用户识别潜在的安全漏洞,并提供针对性的改进建议,确保数据库系统的稳定性和安全性。 ... [详细]
  • 本文深入解析了Django框架中的MVT(Model-View-Template)设计模式,详细阐述了其工作原理和应用流程。通过分析URL模式、视图、模型和模板等关键组件,读者将全面理解Django应用程序的架构体系,掌握如何高效地构建和管理Web应用。 ... [详细]
  • 在Java分层设计模式中,典型的三层架构(3-tier application)将业务应用细分为表现层(UI)、业务逻辑层(BLL)和数据访问层(DAL)。这种分层结构不仅有助于提高代码的可维护性和可扩展性,还能有效分离关注点,使各层职责更加明确。通过合理的设计和实现,三层架构能够显著提升系统的整体性能和稳定性。 ... [详细]
  • 在探讨Hibernate框架的高级特性时,缓存机制和懒加载策略是提升数据操作效率的关键要素。缓存策略能够显著减少数据库访问次数,从而提高应用性能,特别是在处理频繁访问的数据时。Hibernate提供了多层次的缓存支持,包括一级缓存和二级缓存,以满足不同场景下的需求。懒加载策略则通过按需加载关联对象,进一步优化了资源利用和响应时间。本文将深入分析这些机制的实现原理及其最佳实践。 ... [详细]
  • PHP自学必备:从零开始的准备工作与工具选择 ... [详细]
  • 在本文中,我们将为 HelloWorld 项目添加视图组件,以确保控制器返回的视图路径能够正确映射到指定页面。这一步骤将为后续的测试和开发奠定基础。首先,我们将介绍如何配置视图解析器,以便 SpringMVC 能够识别并渲染相应的视图文件。 ... [详细]
  • 最详尽的4K技术科普
    什么是4K?4K是一个分辨率的范畴,即40962160的像素分辨率,一般用于专业设备居多,目前家庭用的设备,如 ... [详细]
  • 在软件开发过程中,经常需要将多个项目或模块进行集成和调试,尤其是当项目依赖于第三方开源库(如Cordova、CocoaPods)时。本文介绍了如何在Xcode中高效地进行多项目联合调试,分享了一些实用的技巧和最佳实践,帮助开发者解决常见的调试难题,提高开发效率。 ... [详细]
author-avatar
深厚科学修养的文艺青年
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有