IT徐胖子的专栏

敬请关注我的微信公众号:IT徐胖子

从0到1构建业务系统基本方法论

本文为原创文章,未经允许不得转载 1 前言 我认为技术之于业务的意义在于 技术可以实现业务的需求 技术可以丰富业务的手段 技术可以扩展业务的边界 2 概述 从0到1构建一个业务系统是一个很具有挑战性的工作,综合能力要求会比较高。本文来谈一谈从0到1构建一个业务系统基本方法论...

2019-03-25 12:16:09

阅读数 368

评论数 1

从经济学角度来看互联网架构的演化历程

作者:IT徐胖子 转载:必须注明本文原始出处 https://blog.csdn.net/woshixuye/article/details/81479321 导读 经过广泛实践的技术、经过时间洗礼的思想,外人看来风马牛不相及,但相通之处却令人豁然开朗,体会到融会贯通的愉悦,这就是...

2018-08-07 12:57:27

阅读数 824

评论数 0

我的声明和公众号

本人技术员一枚,以上博客都是对技术的体会和感悟,不能保证全部博文正确或最优,期待大牛们指正。博文仅供学习交流,不能用作商业用途,不可作为除学习外的任何用途。本人的原创文章,未经允许不得转载。十分期待并欢迎技术以及生活的爱好者交流学习。敬请关注我的公众号【IT徐胖子】 ...

2012-02-05 11:25:18

阅读数 2043

评论数 4

MySQL中实现upsert操作

该操作的实现原理是通过判断插入的记录里是否存在主键冲突来决定是插入还是更新,当出现主键冲突时则进行更新操作(使用 ON DUPLICATE KEY UPDATE 语句后面的参数),若无冲突则进行插入操作。 INSERT INTO t_pro_gift (id, n...

2017-02-12 12:30:09

阅读数 4749

评论数 0

Spring中的计时器StopWatch

1 概述 需要记录每个任务执行时间,或者记录一段代码执行时间,简单方法是打印当前时间与执行完时间的差值,若执行大量测试很麻烦并且不直观。若想对执行时间做进一步控制,则需要在程序中很多地方修改。spring-framework提供了一个StopWatch类可以做类似任务执行时间控制。 StopWat...

2017-02-12 11:58:36

阅读数 5711

评论数 0

Spring中利用配置文件和@value注入属性值

1 简单属性值注入 package com.xy.test1; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; @Service ...

2017-02-12 11:11:03

阅读数 15195

评论数 3

Java自定义线程池和线程总数控制

1 概述 池化是常见的思想,线程池是非常典型的池化的实现,《Java并发编程实战》也大篇幅去讲解了Java中的线程池。本文实现一个简单的线程池。 2 核心类 【1】接口定义 public interface IThreadPool { /** * 关闭线程池 */ publi...

2017-02-04 10:33:31

阅读数 6717

评论数 0

Spring中BeanPostProcessors【2】优雅实现业务分离

1 概述 BeanPostProcessors可以在spring IoC容器初始化受管Bean前、属性设置后对该Bean先做一些预处理,或者在容器销毁受管Bean之前自己释放资源。《Spring中BeanPostProcessors【1】简单预处理》一文有实例说明。本文介绍一个具体案例,优雅实现...

2017-01-24 10:02:00

阅读数 1348

评论数 0

MySQL的timestamp

timestamp有两个属性,分别是CURRENT_TIMESTAMP和ON UPDATE CURRENT_TIMESTAMP两种。 1 CURRENT_TIMESTAMP  当要向数据库执行insert操作时,若有个timestamp字段属性设为CURRENT_TIMESTAMP,则无论这...

2017-01-20 18:45:44

阅读数 1191

评论数 0

Hive中处理json数据

1 概述 Hive中提供了两种针对json数据格式解析的函数,即get_json_object()与json_tuple() 2 示例 set hivevar:msg={ "name": "Tom", "server": &qu...

2017-01-13 18:44:57

阅读数 3096

评论数 0

Spring中BeanPostProcessors【1】简单预处理

1 概述 有时我们希望在Spring IoC容器初始化受管Bean前、属性设置后对该Bean先做一些预处理,或者在容器销毁受管Bean之前自己释放资源。Spring IoC为我们提供了多种方法来实现受管Bean的预处理和后处理。Spring中定义了BeanPostProcessors接口: pac...

2017-01-13 09:04:55

阅读数 2702

评论数 0

Java中isAssignableFrom和instanceof

isAssignableFrom 示例:Class1.isAssignableFrom(Class2) 解释:① 判断Class1和Class2是否相同。②Class1是否是Class2的父类或者接口。 instanceof 示例:object   instanceof   TypeName ...

2017-01-13 08:43:17

阅读数 3396

评论数 0

Netty学习6-ChanelHandler【1】概述

1 概述 Handler在netty中无疑占据着非常重要的地位。Handler与Servlet中的filter很像,通过Handler可以完成通讯报文的解码编码、拦截指定的报文、统一对日志错误进行处理、统一对请求进行计数、控制Handler执行与否等等。 Netty4.X中的所有handle...

2017-01-11 20:11:51

阅读数 1368

评论数 0

Netty学习12-缓冲区【2】ByteBuf

1 概述 《Netty学习11-缓冲区之JDK ByteBuffer》一文中介绍了JDK的缓冲区ByteBuffer的用法和不足。为了弥补这些不足,Netty提供了自己的缓冲区实现ByteBuf(netty3.X是ChannelBuffer)。 2 实现策略 JDK的ByteBuffer已经提...

2017-01-09 10:46:09

阅读数 3369

评论数 0

Netty学习11-缓冲区【1】ByteBuffer

1 代码示例 import java.nio.ByteBuffer; public class JDKByteBufferTest { public static void main(String[] args) { // 初始化ByteBuffer ByteBuffer buffer ...

2017-01-09 08:43:48

阅读数 1509

评论数 0

TCP三次握手和backlog参数

1 三次握手 TCP是面向连接的,无论哪一方向另一方发送数据之前,都必须先在双方之间建立一条连接。在TCP/IP协议中,TCP协议提供可靠的连接服务,连接是通过三次握手进行初始化的。三次握手的目的是同步连接双方的序列号和确认号并交换 TCP窗口大小信息。 为什么非要三次握手呢?谢希仁的...

2017-01-07 07:16:53

阅读数 1713

评论数 0

Netty学习8-自定义复杂序列化框架

1 概述 《Netty学习7-序列化原理》一文中讲述了序列化的原理,通过Java位运算、JDK原生的NIO、Netty的ChannelBuffer做了序列化操作。本文演示稍微复杂的一个的自定义序列化框架,但万变不离其宗,拆解出来还是很简单的。 2 工具类 这是核心类。拆解来看就是调用了Chann...

2017-01-06 10:11:13

阅读数 1380

评论数 1

Netty学习10-粘包和拆包

1 粘包拆包基本概念 TPC是一个面向流的协议。所谓流就是没有边界的一串数据,如同河水般连成一片,其中并没有分界线。TCP底层并不了解上层业务数据的具体含义,它会根据TCP缓冲区的具体情况进行包的划分,所以在业务上认为,一个完整的包可能会被TCP拆成多个包发送,也有可能把多个小包封装成一个包发送。...

2017-01-04 09:24:26

阅读数 2465

评论数 0

RTT(往返时间)和RPC

RTT(Round-Trip Time)往返时间在计算机网络中它是一个重要的性能指标。表示从发送端发送数据开始,到发送端收到来自接收端的确认(接收端收到数据后便立即发送确认,不包含数据传输时间)总共经历的时间。 RTT由三个部分决定:链路的传播时间、末端系统的处理时间、路由器的缓存中的排队和处...

2017-01-03 09:57:32

阅读数 16072

评论数 2

Netty学习9-序列化框架protocbuf

1 概述 ProtoBuf是一个谷歌开发的非常流行的序列化框架,它支持数据结构化一次可以到处使用,甚至可以跨语言使用,通过代码生成工具生成不同语言的源代码。 2 开发 步骤1  准备 protoc.exe下载。载windows版本的生成工具:protoc-2.5.0-win32.zip文件...

2017-01-02 19:48:17

阅读数 1221

评论数 0

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