RocketMQ源码 — 十一、 RocketMQ事务消息

分布式事务是一个复杂的问题,rmq实现了事务的最终一致性,rmq保证本地事务成功消息一定会发送成功并被成功消费,如果本地事务失败了,消息不会被发送。 rmq事务消息的实现过程为: 1. producer发送half消息 2. broker确认half消息,并通知producer,表示消息已经成功发送 ... »

[转]现代Linux系统上的栈溢出攻击

1. 基本内容 这个教程试着向读者展示最基本的栈溢出攻击和现代Linux发行版中针对这种攻击的防御机制。为此我选择了最新版本的Ubuntu系统(12.10),因为它默认集成了几个安全防御机制,而且它也是一个非常流行的发行版。安装和使用都很方便。我们选择的系统是X86_64的。读者将会了解到栈溢出是怎 ... »

从Java继承类的重名static函数浅谈解析调用与分派

在java中,static成员函数是否可以被重写呢? 结论是,你可以在子类中重写一个static函数,但是这个函数并不能像正常的非static函数那样运行。 也就是说,虽然你可以定义一个重写函数,但是该函数没有多态特性。让我们测试一下: 从结果中可以看到,当我们用父类的实例引用(实际上该实例是一个子 ... »

java String类

String类代表字符串,java中所有的字符串类都是由他定义实现的。字符串的本质是一个字符数组 String类常用构造方法 String类常用的方法 字符串中有多少个字符 获取部分字符串 字符串中是否包涵另一个字符串 获取字符串中该对象的内容 小练习 1、 判断该字符串的内容是否为空的字符串 2、 ... »

精湛技艺的祭品

就我个人的经历来讲,对计算机技术的精炼程度总是比不上数学。 为什么呢?思来想去,还是投入与激情的问题。对数学的投入,可不是简单地停留在单纯的技术、技法上,而是对它的历史、发展、伟大人物、社区都了如指掌。各种细节奇闻异事简直如数家珍,还经常同朋友以这些梗作为玩笑的素材。 而programming,根本 ... »

golang 中 string 转换 []byte 的一道笔试题

背景 去面试的时候遇到一道和 string 相关的题目,记录一下用到的知识点。题目如下: 问以上代码的输出是什么。 分析 很容易可以看出 s 和 ps 代表同一个 string,b 和 pb 代表同一个 byte 的切片。关键在于 根据 "The Go Programming Language" 的 ... »

ionic3 懒加载在微信上缓存的问题

1.懒加载是什么? 在ionic2中所有的组件、模块、服务、管道等都堆积在app.module.ts模块中,在页面初始化的时候会一次性加载所有的资源,导致资源过大,页面渲染缓慢,也导致app.module.ts混乱,不美观,不易维护,不适用于结构繁多、业务复杂的项目。 懒加载的出现,使得在跳转到对应 ... »

P2P综述

原文参见:http://www.lotushy.com/?p=113 [TOC] 什么是P2P P2P全称是Peer to peer。P2P计算或P2P网络是一种分布式应用架构。它将任务或负载分发给Peers。在应用中,Peers是平等的、对等的参与者。 从资源角度来讲,Peers将它们拥有的资源如 ... »

手游热更新方案--Unity3D下的CsToLua技术

WeTest 导读 CsToLua工具将客户端 C#源码自动转换为Lua,实现热更新,本文以麻将项目为例介绍客户端技术细节。 麻将项目架构 其中ChinaMahjong-CSLua为C#工程,实现麻将项目的主要业务流程。翻译工程的输入是C#项目生成的dll文件。其中Cecil负责分析类型 类成员关系 ... »

[译文]Domain Driven Design Reference(四)—— 柔性设计

本书是Eric Evans对他自己写的《领域驱动设计-软件核心复杂性应对之道》的一本字典式的参考书,可用于快速查找《领域驱动设计》中的诸多概念及其简明解释。 其它本系列其它文章地址: [译文]Domain Driven Design Reference(一)—— 前言 [译文]Domain Driv ... »

性价比超高的设计模式——单例模式

为什么说单例模式性价比高? 在面试过程中经常让手撸的一种设计模式,并且被面的频率非常高。重点是这种设计模式很简单! "我的个人博客(后台建站,Tomcat集群,Redis分布式,nginx,适合初学者)" 为什么要用单例模式? 在开发过程中,根据需求的不同,有时可能要求对象实例只能有一个,这时就要使 ... »

Selenium在定位的class含有空格的复合类的解决办法整理

1.class属性唯一但是有空格,选择空格两边唯一的哪一个 2.class属性科普 ♦ class属性中间的宫格并不是空字符串,那是间隔符号,表示的是一个元素有多个class的属性名称,class属性是比较特殊的一个,除了class这个元素类型有多个属性外,其他的像name,id是没多个属性的。 3 ... »

MySQL-5.6.36-部署安装(编译版)

1、系统环境(本站使用centos6.8_x64) 2、yum安装MySQL依赖包 3、创建MySQL用户 4、下载MySQL源码包到指定目录 5、下载完成后,解压并进入解压后的目录中 6、编译指定参数 7、make安装 8、创建软连接 9、复制配置文件到/etc/my.cnf 10、初始化MySQ ... »

一个优秀团队leader应该具备的几点素质

首先,技术要过硬。毕竟一个团队是在靠技术为别人创造价值的,一定程度上,团队leader的技术能力决定了整个团队的技术上限。leader对技术的坚持和追求很可能会影响团队成员对技术的坚持和追求,至少leader技术过硬会给团队成员一个正反馈。 其次,要具备良好的沟通能力。这里的沟通能力基本要求是能够把 ... »

在weblogic上部署遇到的问题总结

最近在weblogic上发布自己的项目,但是当调用程序服务时却报错了。于是查看了错误日志。 错误日志如下: Root cause of ServletException. java.lang.LinkageError: loader constraint violation: when resolv ... »

Python并发编程之深入理解yield from语法(八)

大家好,并发编程 进入第八篇。 直到上一篇,我们终于迎来了Python并发编程中,最高级、最重要、当然也是最难的知识点--协程。 当你看到这一篇的时候,请确保你对生成器的知识,有一定的了解。当然不了解,也没有关系,你只要花个几分钟的时间,来看下我上一篇文章,就能够让你认识生成器,入门协程了。 再次提 ... »

Spring AOP就是这么简单啦

前言 只有光头才能变强 上一篇已经讲解了 "Spring IOC知识点一网打尽!" ,这篇主要是讲解Spring的AOP模块~ 之前我已经写过一篇关于AOP的文章了,那篇把比较重要的知识点都讲解过了一篇啦: "Spring【AOP模块】就这么简单" ,很荣幸被开源中国推荐过~~ 如果没有AOP的基础 ... »

java底层实现分页

查询分页显示的框架层出不穷,自己也实现了一组,因为比较笨,还没有学到框架,而是用mvc实现。自己按照百度的分页,也实现了,就是有点丑。 需求: 分页功能分析: 1.物理分页--每次点击查询 优点:查询快 缺点:和数据库交互太频繁 2.逻辑分页--一次查询所有 优点:和数据库交互少 缺点:自行脑补。 ... »