自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 资源 (10)
  • 收藏
  • 关注

转载 C++的ORM工具比较

用过Java的都知道SSH框架,特别对于数据库开发,Java领域有无数的ORM框架,供数据持久层调用,如Hibernate,iBatis(现在改名叫MyBatis),TopLink,JDO,JPA……非常方便实用。    用过C#的同学们也都知道通过CodeSmith软件,生成微软的PetShop分层模式,达到数据持久层的代码,也非常方便。    那么我们用C++的怎么办,我们也是

2015-04-28 16:25:13 6565

转载 ZeroMQ的学习和研究

一、ZeroMQ的背景介绍引用官方的说法: “ZMQ(以下ZeroMQ简称ZMQ)是一个简单好用的传输层,像框架一样的一个socket library,他使得Socket编程更加简单、简洁和性能更高。是一个消息处理队列库,可在多个线程、内核和主机盒之间弹性伸缩。ZMQ的明确目标是“成为标准网络协议栈的一部分,之后进入Linux内核”。现在还未看到它们的成功。但是,它无疑是极具前景的、并且是

2015-04-22 17:31:30 474

转载 activemq的几种基本通信方式总结

简介     在前面一篇文章里讨论过几种应用系统集成的方式,发现实际上面向消息队列的集成方案算是一个总体比较合理的选择。这里,我们先针对具体的一个消息队列Activemq的基本通信方式进行探讨。activemq是JMS消息通信规范的一个实现。总的来说,消息规范里面定义最常见的几种消息通信模式主要有发布-订阅、点对点这两种。另外,通过结合这些模式的具体应用,我们在处理某些应用场景的时候也衍生

2015-04-22 16:35:23 411

转载 Dubbo与Zookeeper、SpringMVC整合和使用(负载均衡、容错)

互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,Dubbo是一个分布式服务框架,在这种情况下诞生的。现在核心业务抽取出来,作为独立的服务,使前端应用能更快速和稳定的响应。 第一:介绍Dubbo背景        大规模服务化之前,应用可能只是通过RMI或Hessian等工具,

2015-04-17 17:15:37 318

转载 zookeeper基本原理

ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,它包含一个简单的原语集,分布式应用程序可以基于它实现同步服务,配置维护和命名服务等。Zookeeper是hadoop的一个子项目,其发展历程无需赘述。在分布式应用中,由于工程师不能很好地使用锁机制,以及基于消息的协调机制不适合在某些应用中使用,因此需要有一种可靠的、可扩展的、分布式的、可配置的协调机制来统一系统的状态。Zookee

2015-04-17 17:00:59 375

转载 Protobuf消息设计原则(值得借鉴)

目录[-]1. 使用 protobuf 的enum定于消息的编号,也就是消息的类型。2. 会为每个具有消息体的消息定义一个对应的protobuf message。例如Login_Request会有一个对应LoginRequest消息。3. 会为每个消息大类定义一个消息,例如命令消息全部包含在message Command中,请求消息全部包含在Request消息中,应答消息全部包

2015-04-16 16:43:45 4963 2

原创 比较全的Netty5类图整理

抽时间整理了一下Netty5的相关类图,便于以后开发参考,主要包括Bootstrap, Channel, Eventloop, Handler, Task, Future, ByteBuf等几大内容。1. Bootstrap2. Eventloop3. Channel4. Channel Handler5. Task

2015-04-16 14:52:29 2210 1

转载 Netty内存泄露检测原理分析

引用计数netty中使用引用计数机制来管理资源,当一个实现ReferenceCounted的对象实例化时,引用计数置1.客户代码中需要保持一个该对象的引用时需要调用接口的retain方法将计数增1.对象使用完毕时调用release将计数减1.当引用计数变为0时,对象将释放所持有的底层资源或将资源返回资源池.内存泄露按上述规则使用Direct和Pooled的ByteBuf尤其

2015-04-16 11:50:47 5021 4

转载 Java中三个引用类SoftReference 、 WeakReference 和 PhantomReference的区别

本文将谈一下对SoftReference(软引用)、WeakReference(弱引用)和PhantomRefrence(虚引用)的理解,这三个类是对heap中java对象的应用,通过这个三个类可以和gc做简单的交互。强引用:除了上面提到的三个引用之外,还有一个引用,也就是最长用到的那就是强引用.强引用是使用最普遍的引用。如果一个对象具有强引用,那垃圾回收器绝不会回收它

2015-04-16 11:04:42 508

转载 Fork/Join框架介绍

1. 什么是Fork/Join框架Fork/Join框架是Java7提供了的一个用于并行执行任务的框架, 是一个把大任务分割成若干个小任务,最终汇总每个小任务结果后得到大任务结果的框架。我们再通过Fork和Join这两个单词来理解下Fork/Join框架,Fork就是把一个大任务切分为若干子任务并行的执行,Join就是合并这些子任务的执行结果,最后得到这个大任务的结果。比如计算1+2+。。

2015-04-15 17:42:59 358

转载 Java 理论与实践: 正确使用 Volatile 变量

Java 语言中的 volatile 变量可以被看作是一种 “程度较轻的 synchronized”;与 synchronized 块相比,volatile 变量所需的编码较少,并且运行时开销也较少,但是它所能实现的功能也仅是synchronized 的一部分。本文介绍了几种有效使用 volatile 变量的模式,并强调了几种不适合使用 volatile 变量的情形。锁提供了两种主

2015-04-15 17:17:05 240

转载 sun.misc.unsafe类的使用

这个帖子是关于JAVA中鲜为人知的特性的后续更新,如果想得到下次在线讨论的更新,请通过邮件订阅,并且不要忘了在评论区留下你的意见和建议。    Java是一个安全的开发工具,它阻止开发人员犯很多低级的错误,而大部份的错误都是基于内存管理方面的。如果你想搞破坏,可以使用Unsafe这个类。这个类是属于sun.* API中的类,并且它不是J2SE中真正的一部份,因此你可能找不到任何

2015-04-15 15:25:56 374

转载 JAVA CAS原理深度分析

本文摘自:http://blog.csdn.net/hsuxu/article/details/9467651

2015-04-15 15:21:24 437

转载 并发编程 Promise, Future 和 Callback

在并发编程中,我们通常会用到一组非阻塞的模型:Promise,Future 和 Callback。其中的 Future 表示一个可能还没有实际完成的异步任务的结果,针对这个结果可以添加 Callback 以便在任务执行成功或失败后做出对应的操作,而 Promise 交由任务执行者,任务执行者通过 Promise 可以标记任务完成或者失败。 可以说这一套模型是很多异步非阻塞架构的基础。这一套

2015-04-15 13:59:37 1728

转载 java并发编程-Executor框架

Executor框架是指java 5中引入的一系列并发库中与executor相关的一些功能类,其中包括线程池,Executor,Executors,ExecutorService,CompletionService,Future,Callable等。他们的关系为: 并发编程的一种编程方式是把任务拆分为一些列的小任务,即Runnable,然后在提交给一个Executor执

2015-04-15 13:52:48 358

转载 LogStash,使日志管理更简单

James Turnbull,通过对日志管理项目情境中的Logstash实施细节的介绍,给了读者信服的理由去使用Logstash进行集中化的日志管理。 《Logstash》一书通过一个双面案例(two side case)从不同方面进行介绍,其低准入门槛适合小企业使用,其扩展能力使其也能满足大企业的需求。今年二月,James在Hangops会议上谈到本书,“它主要面向那些以前没有见过LogSt

2015-04-15 09:07:54 1959

转载 用Kibana和logstash快速搭建实时日志查询、收集与分析系统

Logstash是一个完全开源的工具,他可以对你的日志进行收集、分析,并将其存储供以后使用(如,搜索),您可以使用它。说到搜索,logstash带有一个web界面,搜索和展示所有日志。kibana 也是一个开源和免费的工具,他可以帮助您汇总、分析和搜索重要数据日志并提供友好的web界面。他可以为 Logstash 和 ElasticSearch 提供的日志分析的 Web 界面说到这里,我们

2015-04-15 09:06:03 460

原创 写得比较好的设计模式相关博文汇总

设计模式汇总介绍

2015-04-10 16:12:57 450

转载 Actor编程模型——简介

Actor编程模型——简介2014年10月31日 ⁄ 综合 ⁄ 共 1983字 ⁄ 字号 小 中 大 ⁄ 评论关闭一、            引言之前系统中有这样一处代码:在线上运行一段时间后,这个任务线程竟然莫名其妙地退出了,要不是后来添加了一些日志信息,以及thread-dump分析,根本不晓得这个任务早都没有了。原因就是hand

2015-04-10 09:27:36 3599

转载 使用 JADE 平台进行智能体开发

作为一名软件开发人员,我相信大家都对面向对象技术有个比较深刻的认识。面向对象技术的确为提高软件开发效率做出了巨大的贡献。但是在我们的开发过程中,面向对象也暴露了一些不足,其中最主要的不足可以归纳为:面向对象技术并不是对现实世界的最贴切的模拟。既然出现了不足,那么在这种特定的背景下,必然会出现一种软件开发理论和技术来解决软件开发中的问题。这就是智能体Agent。本文首先介绍一下智能体的基本概念,然后

2015-04-09 17:51:08 3419

转载 设计与开发应用服务器(一)------常见模式

设计与开发服务器算是一个技术含量比较高的领域,需要涉及到网络编程、IO、多线程、分布式、性能和可扩展性等较为复杂的技术细节,比起JSP/servlet或SSH框架开发业务系统来说,开发服务器比较偏重于技术一些,许多开发人员会有些束手无措,但却无法避免,比如基于HTTP协议的服务不适用时,或需要提供某种协议的容器时。其实服务器的设计与开发也是有模式可借鉴,只不过没有框架或是书籍来这么一些模式

2015-04-09 17:22:06 450

转载 Java多线程编程模式实战指南一:Active Object模式

Active Object模式是一种异步编程模式。它通过对方法的调用与方法的执行进行解耦来提高并发性。若以任务的概念来说,Active Object模式的核心则是它允许任务的提交(相当于对异步方法的调用)和任务的执行(相当于异步方法的真正执行)分离。这有点类似于System.gc()这个方法:客户端代码调用完gc()后,一个进行垃圾回收的任务被提交,但此时JVM并不一定进行了垃圾回收,而可能是在g

2015-04-09 09:39:56 482

转载 Yacc 与 Lex 快速入门

本文摘自: http://www.ibm.com/developerworks/cn/linux/sdk/lex/Lex 代表 Lexical Analyzar。Yacc 代表 Yet Another Compiler Compiler。 让我们从 Lex 开始吧。LexLex 是一种生成扫描器的工具。扫描器是一种识别文本中的词汇模式的程序。 这些词汇模式(或者

2015-04-08 14:04:25 616

转载 java动态代理(JDK和cglib)

JAVA的动态代理 代理模式 代理模式是常用的java设计模式,他的特征是代理类与委托类有同样的接口,代理类主要负责为委托类预处理消息、过滤消息、把消息转发给委托类,以及事后处理消息等。代理类与委托类之间通常会存在关联关系,一个代理类的对象与一个委托类的对象关联,代理类的对象本身并不真正实现服务,而是通过调用委托类的对象的相关方法,来提供特定的服务。 按照代理的创建时期,代理类

2015-04-07 14:42:10 297

转载 EasyMock 使用方法与原理剖析

文章摘自-IBM DevelopWorks: http://www.ibm.com/developerworks/cn/opensource/os-cn-easymock/EasyMock 是一套通过简单的方法对于指定的接口或类生成 Mock 对象的类库,它能利用对接口或类的模拟来辅助单元测试。本文将对 EasyMock 的功能和原理进行介绍,并通过示例来说明如何使用 EasyMock

2015-04-07 09:42:50 418

Hashed and Hierarchical Timing Wheels

Hashed and Hierarchical Timing Wheels: Data Structures for the Efficient Implementation of a Timer Facility

2015-03-24

Pattern.Oriented.Software.Architecture.Volume.1

This is a book about patterns for software architecture. or simply. patterns. Patterns have been drawing considerable attention over recent years: workshops, tutorials, forums for electronic discussion. papers in journals and whole books are being devoted to patterns. The pattern community has even started its own conference. All this enthusiastic discussion of patterns makes them seem as if they are the climax of the 'object wave'.

2015-03-24

Pattern-Oriented Software Architecture, Volume 2

Middleware is the set of services, protocols, and support utilities providing the 'plumbing' thatmakes modern distributed systems and applications possible—the infrastructure thatunderlies web services, distributed objects, collaborative applications, e-commerce systems, and other important platforms. Not long ago, the term middleware was rarely heard, andmiddleware developers were rarer still. But over the past decade, the term, the research andpractice, and its impact have become ubiquitous. Yet, until now, there has not been a book describing how to construct networked and concurrent object-oriented (OO) middleware, soits design has remained something of a black art. This book demystifies middlewareconstruction, replacing the need to have an expert looking over your shoulder with wellreasoned, empirically-guided accounts of common design problems, forces, successful solutions, and consequences.

2015-03-24

Core J2EE™ Patterns: Best Practices and Design Strategies, Second Edition

"The Java landscape is littered with libraries, tools, and specifications. What's been lacking is the expertise to fuse them into solutions to real-world problems. These patterns are the intellectual mortar for J2EE software construction."-John Vlissides, co-author of Design Patterns, the "Gang of Four" book

2015-03-19

NoSQL精粹_中文完整版.pdf

NoSQL精粹_中文非扫描完整版,总共175页,内容完整清晰。

2014-07-01

Android入门到精通源代码

本代码为Android入门到精通详解所带示例代码,完整。

2014-07-01

ThinkPHP3.2完全开发手册CHM

本手册仅针对ThinkPHP3.2版本 ThinkPHP一直在致力于简化企业和个人的WEB应用开发

2014-07-01

EM78芯片编程详细资料

义隆EM78芯片的详细编程资料 1. EM78系列单片机程序设计基础.pdf 2. EM78系列单片机--中断程序的设计.doc 3. EM78系列指令系统.pdf 4. EMC单片机程序开发技巧.pdf 5. TinyCCompilerUserManual(English).pdf 6. WICE.pdf 7. 编译器WicePlus2.6.zip

2009-03-19

Inside MAPI

A very classic book about MAPI.

2009-03-19

Windows Shell扩展编程完全指南

目录与资料简介 第一节 - 一步步教你如何编写Shell扩展 简要概述了Shell扩展及如何对之进行调试. 所附的例子演示了如何为文本文件对象添加上下文菜单项。 -------------------------------------------------------------------------------- 第二节 - 如何编写一次操作多个文件对象的Shell扩展 示范了如何编写一次操作多个被选择文件的上下文菜单扩展。所附的例子为DLL文件的上下文菜单项添加”注册”和”注销”两项以方便DLL服务器的注册操作. -------------------------------------------------------------------------------- 第三节-如何编写为文件对象弹出提示信息框的Shell扩展 示范了如何使用QueryInfo 扩展为文本文件对象提供提示信息框,同时还解释了如何在Shell扩展中使用 MFC. -------------------------------------------------------------------------------- 第四节 - 如何编写提供定制拖放功能的Shell扩展 示范了如何添加菜单项到 用户用右键拖放文件对象时弹出的上下文菜单. 所附的例子为文件对象生成硬链接(hard link). (注: 该扩展只在Windows 2000下起作用, 但你可以在以前版本的Windows中编译并运行该扩展(具体使用请见文章内容) -------------------------------------------------------------------------------- 第六节-如何编写定制”发送到”菜单的Shell扩展 讨论了如何使用放置目标处理器扩展添加菜单项到”发送到”菜单. 所附的例子实现了将文件发送到任一文件夹的功能。 第五节-如何编写添加属性页到文件属性对话框中的Shell扩展 示范了如何添加新定制的属性页到文件属性对话框中. 所附的例子添加一个定制的属性页,使用它你可以编辑文件对象的创建,修改和最后访问时间. -------------------------------------------------------------------------------- 第七节-如何编写自画上下文菜单项的Shell扩展, 以及如何使上下文菜单扩展响应文件夹窗口背景上的鼠标右击事件 解决了读者提出的两个问题: 自画菜单项和文件夹窗口背景上的上下文菜单. 所附的例子包含两个扩展: 位图预览 (如上图) 在上下文菜单上显示BMP文件的缩略图;另一个扩展添加菜单项到文件夹窗口背景上下文菜单. -------------------------------------------------------------------------------- 第八节-如何使用信息栏扩展添加定制的信息栏到资源浏览器详细资料列表中 示范了如何添加定制信息栏到Windows 2000资源浏览器的详细信息列表. 所附的例子添加若干个信息栏以显示MP3文件的资料标签数据 (改扩展仅用于Windows 2000.) -------------------------------------------------------------------------------- 第九节-如何编写定制文件类型显示图标的Shell扩展 示范了如何根据每一个具体的文件定制文件图标.

2008-10-20

空空如也

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

TA关注的人

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