自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 资源 (4)
  • 收藏
  • 关注

原创 java和python互相调用

Python作为一种脚本语言,大量用于测试用例和测试代码的编写,尤其适用于交互式业务场景。实际应用中,很多网管系统做的如交换机、防火墙等设备升级,往往和设备交互的命令以及设备回显的信息都是在python脚本中写好,Java工程直接调用相应的python脚本,执行升级的具体步骤。但是具体的命令一般通过和设备建立的ssh连接交互,最后python又重新调回java实现的ssh功能。     

2017-01-20 16:47:14 1245

原创 各种算法

public static String reverse(String str){ if(str == null || str.length() <= 1){ return str; } return reverse(str.substring(1))+str.charAt(0); } /** * 按照指定字节长度

2017-01-12 10:46:27 235

原创 分布式消息系统:Kafka

Kafka是分布式发布-订阅消息系统。它最初由LinkedIn公司开发,之后成为Apache项目的一部分。Kafka是一个分布式的,可划分的,冗余备份的持久性的日志服务。它主要用于处理活跃的流式数据。在大数据系统中,常常会碰到一个问题,整个大数据是由各个子系统组成,数据需要在各个子系统中高性能,低延迟的不停流转。传统的企业消息系统并不是非常适合大规模的数据处理。为了已在同时搞定在线应用(消

2017-01-11 15:28:47 228

转载 分布式系统事务一致性解决方案

本文首发于InfoQ!!!http://www.infoq.com/cn/articles/solution-of-distributed-system-transaction-consistency开篇在OLTP系统领域,我们在很多业务场景下都会面临事务一致性方面的需求,例如最经典的Bob给Smith转账的案例。传统的企业开发,系统往往是以单体应用形式存在的,也没有横跨多

2017-01-10 10:05:25 342

转载 HTTP 协议详解

当今web程序的开发技术真是百家争鸣,ASP.NET, PHP, JSP,Perl, AJAX 等等。 无论Web技术在未来如何发展,理解Web程序之间通信的基本协议相当重要, 因为它让我们理解了Web应用程序的内部工作. 本文将对HTTP协议进行详细的实例讲解,内容较多,希望大家耐心看。也希望对大家的开发工作或者测试工作有所帮助。使用Fiddler工具非常方便地捕获HTTP Request和HT

2017-01-06 14:55:01 264

原创 一个复杂系统的拆分改造实践

1 为什么要拆分?先看一段对话。从上面对话可以看出拆分的理由:1)  应用间耦合严重。系统内各个应用之间不通,同样一个功能在各个应用中都有实现,后果就是改一处功能,需要同时改系统中的所有应用。这种情况多存在于历史较长的系统,因各种原因,系统内的各个应用都形成了自己的业务小闭环;2)  业务扩展性差。数据模型从设计之初就只支持某一类的业务,来了新类型的业务后又

2017-01-03 17:59:31 2458

原创 可扩展 Web 架构与分布式系统

开放源代码已经成为一些大型网站的基本原则。而在这些网站成长的过程中,一些优秀的实践经验和规则也出现在他们的结构中。本文旨在介绍一些在大型网站结构设计的过程中需要注意的关键问题以及实现目标的基础工作。本文侧重于介绍网络系统,尽管一些准则在其他分布式系统中也是适用的。1.1. web分布式系统的设计原则搭建和运营一个可伸缩的web站点或者应用程序意味着什么?在原始层面上这仅仅是

2017-01-03 17:58:18 298

原创 MySQL误操作后如何快速恢复数据

基本上每个跟数据库打交道的程序员(当然也可能是你同事)都会碰一个问题,MySQL误操作后如何快速回滚?比如,不小心update了整张表的某个字段,或者delete一张表,忘加限制条件,整张表都没了。假如这还是线上环境核心业务数据,那这事就闹大了。误操作后,能快速回滚数据是非常重要的。传统解法用全量备份重搭实例,再利用增量binlog备份,恢复到误操作之前的状态。然后跳过误操作的SQL,再继

2017-01-03 17:53:20 2105

原创 基于 Nginx 的软件负载均衡实现解读

负载均衡在服务端开发中算是一个比较重要的特性。因为Nginx除了作为常规的Web服务器外,还会被大规模的用于反向代理前端,因为Nginx的异步框架可以处理很大的并发请求,把这些并发请求hold住之后就可以分发给后台服务端(backend servers,也叫做服务池, 后面简称backend)来做复杂的计算、处理和响应,这种模式的好处是相当多的:隐藏业务主机更安全,节约了公网IP地址,并且在业务量

2017-01-03 17:51:41 2369

原创 MySQL 大表优化方案

当MySQL单表记录数过大时,增删改查性能都会急剧下降,可以参考以下步骤来优化:单表优化除非单表数据未来会一直不断上涨,否则不要一开始就考虑拆分,拆分会带来逻辑、部署、运维的各种复杂度,一般以整型值为主的表在千万级以下,字符串为主的表在五百万以下是没有太大问题的。而事实上很多时候MySQL单表的性能依然有不少优化空间,甚至能正常支撑千万级以上的数据量:字段尽量使

2017-01-03 17:47:47 225

原创 技术人的基础生存技能:高效用 Google

如果票选近二十年最伟大的发明,我相信搜索引擎肯定会占据一个不容小觑的位置,它不单是一项发明,更是一项成就,最大程度消灭了信息的不平等。既然人人都可以接触到海量的信息,那么衡量信息财富多寡就只剩下技巧这惟一的标准了:善用搜索引擎的都是信息时代的富翁,不懂搜索引擎的都是信息时代的负翁。而像程序员这种必须终生学习的职业,搜索引擎就是我们的左膀右臂。懂搜索引擎就是我们的基本功,不,应该是童子功。只

2017-01-03 17:45:51 305

原创 Apache kafka 工作原理介绍

消息队列消息队列技术是分布式应用间交换信息的一种技术。消息队列可驻留在内存或磁盘上, 队列存储消息直到它们被应用程序读走。通过消息队列,应用程序可独立地执行–它们不需要知道彼此的位置、或在继续执行前不需要等待接收程序接收此消息。在分布式计算环境中,为了集成分布式应用,开发者需要对异构网络环境下的分布式应用提供有效的通信手段。为了管理需要共享的信息,对应用提供公共的信息交换机制是重要的。常用

2017-01-03 17:44:33 273

Effective Java(高清中文版)pdf

Effective Java(高清中文版)pdf

2016-10-28

重构-改善既有代码的设计(高清中文版)pdf

重构-改善既有代码的设计(高清中文版)pdf

2016-10-28

Java并发编程实战(高清中文版)pdf

Java并发编程实战(高清中文版)pdf

2016-10-28

Struts2+hibernate+spring in action(3本最新英文完整版)

包括struts2、hibernate、spring三本in action系列,业界经典之作

2014-11-19

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除