- 博客(39)
- 资源 (4)
- 收藏
- 关注
原创 测试udp tcp ip 端口的可用性
NC 测试udp tcp 端口的可用性1.nc 参数 (nc --help)2.nc 测试 UDP2.1 测试内容、条件2.2 开启UDP监听2.3 客户端建立UDP连接2.4 互发数据1.nc 参数 (nc --help)[root@localhost ~]# nc --helpGNU netcat 0.7.1, a rewrite of the famous networking too...
2019-07-03 17:38:35
870
原创 Synchronized 对象锁/类锁差异概要总结
Synchronized 对象锁/类锁对象锁包含两个种类:synchronized(this)synchronized修饰非static方法类锁包含两个种类:synchronized 修饰static方法synchronized(***.class)对象锁包含两个种类:synchronized(this)synchronized修饰非static方法这两类的锁是实例对象,不同的多个对象,...
2019-03-26 17:06:13
228
原创 docker小记(持续更新)
本文目的已启动的容器A里安装了多个新的软件,重启会失效.这篇文章作为一个小记录:如何将启动的"容器"和容器内新安装的软件一起生成新的镜像,无需下次安装镜像.主要步骤指令如下//启动 容器tomcat:1.0,这是之前创建的一个容器,有安装tomcat1)docker run -it -p 8088:8080 -d tomcat:1.0 // 启动和容器的联系界面,24d7d58e66...
2019-02-21 18:30:42
300
转载 阿里巴巴开源分布式事务解决方案 FESCAR 牛哄哄
Fescar 是 阿里巴巴 开源的 分布式事务中间件,以 高效 并且对业务 0 侵入 的方式,解决 微服务 场景下面临的分布式事务问题。1. 什么是微服务化带来的分布式事务问题?首先,设想一个传统的单体应用(Monolithic App),通过 3 个 Module,在同一个数据源上更新数据来完成一项业务。很自然的,整个业务过程的数据一致性由本地事务来保证。随着业务需求和架构的...
2019-01-14 15:28:52
369
原创 阿里分布式事务框架GTS开源喽
What is FESCAR?A distributed transaction solution with high performance and ease of use for microservices architecture.Distributed Transaction Problem in MicroservicesLet's im...
2019-01-11 12:23:00
287
转载 阿里分布式事务框架GTS开源啦!
https://github.com/alibaba/fescarWhat is FESCAR?A distributed transaction solution with high performance and ease of use for microservices architecture.Distributed Transaction Problem in Microser...
2019-01-11 12:16:17
1764
原创 基于hadoop HDFS的存储系搭建
基于hadoop HDFS的存储系统(web 网盘)1. HDFS的优势1.1 源码注释说很透彻:1.2 对外作为一个整体 和 容错性 的原理2. 代码实现2.1 依赖重要的包2.1 上传功能2.2 下载功能结语1. HDFS的优势1.1 源码注释说很透彻:Hadoop DFS is a multi-machine system that appears as a singledisk. ...
2019-01-06 00:17:34
2143
原创 基于netty的RPC实现
基于netty的RPC实现这里解决了三个问题三个问题的具体实现如下协议定义:单客户端并发发送/消息维护问题:服务端并发服务:测试方式,以及结果客戶端 测试模拟 调用远程服务客戶端 测试模拟 收到的结果参考这里解决了三个问题协议定义,解决 粘包/拆包 问题单客户端并发发送/消息维护问题服务端并发提供服务问题三个问题的具体实现如下协议定义:完整数据块包含数据 开始标识头,数据长度,真...
2019-01-03 17:33:34
2335
2
原创 RPC(hadoop的实现)
这里客户端并不是“头信息”和“请求数据”一起发发送,而是分两次发送。先发如下的头信息,然后才发送请求的服务和参数: /** * Write the connection header - this is sent when connection is established * +----------------------------------+ * | ...
2018-12-23 16:24:04
116
转载 老板让你抗住千万级流量,如何做架构设计?
随着互联网的发展,各项软件的客户量日益增多,当客户量达到一定峰值时,当数以万计的流量来临时,程序的顺利运行以及即时响应则显得尤为重要,就像双11那天的淘宝一样。那么,如何设计架构才能够抗住这千万级的流量。老板让你抗住千万级流量,如何做架构设计?首先,要在我们架构设计的时候建立一些原则。1. 实现高并发服务拆分:将整个项目拆分成多个子项目或者模块,分而治之,将项目进行水平扩展。服...
2018-11-23 13:23:44
254
原创 Thread 的threadLocals 和 inheritableThreadLocals
两者什么差异呢,咱们来看下源码中的官方注释?/* ThreadLocal values pertaining to this thread. This map is maintained* by the ThreadLocal class. */ThreadLocal.ThreadLocalMap threadLocals =null; /* ...
2018-10-31 20:03:00
889
原创 concurrent 包
1)ReentrantLock 重入锁2)LinkedBlockingDeque 两端都可取放:putFirstputLastofferFirstofferLast3)LinkedBlockingQueue 一端取一端放:只有一种put/offer方法4)ConcurrentHashMap5)ThreadPoolExecutor 线程池构造6)AtomicBoolean/Ato...
2018-10-08 18:37:14
111
原创 CORS/跨域问题/springboot实践跨域
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
2018-08-12 23:00:47
180
原创 spring 注解记录
//有时发现总是要重找用法/差异,还是找个地方记录并随时更新比较好@Required 主要用于setter方法,标注的属性或bean对象要求xml中进行配置不然会报NullPointerExceptions错https://docs.spring.io/spring-framework/docs/current/spring-framework-reference/core.html#beans...
2018-08-07 14:18:09
114
原创 tensorflow 安装遇到的各种坑
新玩意总要尝一尝,结果耗了不少时间,总结下,防止大家再次踩坑正常步骤(pythong3):sudo apt-get install python3-pip python3-dev sudo pip3 install --upgrade pip sudo pip3 install tensorflow具体坑点:32位数和64位系统的问题,据说32位不支持. 对于pip无法升级的情...
2018-08-02 15:09:30
2304
翻译 Understanding Convolutions/理解卷积(4)
两个维度的卷积层如何呢? 两个维度的线路对应二维卷积。 考虑上面提到的查找图片边界的例子,通过滑动kernel函数将其应用到每个小块。像这样,一个卷积层将应用于图片的每个块。结论 这边文章介绍了不少数学机制,但是我们能够获得什么并不明显。在概率论和计算机图像学中卷积很有用,但是我们从基于卷积的神经网络中获取到什么呢?有理方式。 首先是我们有了...
2018-07-24 23:40:31
271
翻译 Understanding Convolutions/理解卷积(3)
对应上面的问题: 所以,一个不同权重联系每个输入与每个神经元的权重矩阵: ...
2018-07-24 17:49:45
240
翻译 Understanding Convolutions/理解卷积(2)
随着分布式的交叉变小将收缩。 通过在动画中利用这一技巧,的确可以可视化的理解积。 使用这个方式,很多事情变得直观。 让我们考虑一个非概率的问题。卷积有时用在音频处理。比如可能使用带有连个尖峰,其他地方是零的函数来制造一个回声些效果。当有两个尖峰的函数滑动,第一个峰尖第一次到达,将添加到输出信号,紧跟者添加第二个到达的峰到输出信号。 更高维度的卷积 卷...
2018-07-24 17:49:25
359
翻译 Understanding Convolutions/理解卷积(1)
上一篇文章对神经网络算法有了初步的理解,也为涉及重要的数学知识点。然而,进一步理解的的话我们需要理解卷积。 如果仅仅是为了理解卷积神经网络。大概的理解卷积是足够了的。但是本篇的目的是卷积神经的前沿和探索新的选择。做到这一点要很深入的理解卷积。 幸运的是,借助几个例子,卷积就能简单的呈现。从丢球来学习 设想从一定的高度丢球到地面,这仅仅是一维的运动。如果丢...
2018-07-24 17:49:07
248
原创 rabbitmq 基本的构建消息应用的方式/rabbitmq工作模式
Github:https://github.com/liubin192837/rabbitmPractice "Hello World!"推送端:src/main/java/com/lb/demo/utils.javapublic static void p2pSend() throws IOException, TimeoutException { String qu...
2018-07-18 17:45:52
156
翻译 rabbitmq.“消费端确认收到”和“推送者确认”(5)
发布者的否定应答 特殊情况下,中转服务节点无法成功的处理消息,则发送basic.nack消息,而不是basic.ack。这种情况下,basic.nack和basic.ack字段意义相同,都应重排字段都应被忽略。否定应答一个或多个消息,中转节点既声明无法处理这些消息,也不对这些消息再负责,基于这点客户端可能选择重新发布这些消息。 在通道设置未确认模式,所有后到的消息将一次应答。不...
2018-07-18 16:53:38
279
翻译 rabbitmq.“消费端确认收到”和“推送者确认”(4)
预取值设定 由于信息是异步发送的,同一时刻,可能不止一个信息在通道中传输。手动应答本质上也是异步的。所以有一个变动的信息未确认时间窗口期。开发者通常希望限制这个窗口的大小,避免消费端缓存越界问题。这点可以用basic.qos方法设置预取值得到。这个值是允许通道中存在未确认消息的最大值。一旦达到这个最大值,RabbitMQ将不再向通道中传递信息,直到通道中信息被应答的。 比如有5,6,7,8几...
2018-07-16 19:51:52
790
翻译 rabbitmq.“消费端确认收到”和“推送者确认”(3)
成批的确认传递 手动确认可以成批的确认处理来减少网络的负担。这个可以通过在如上的方法设置multiple字段属性为true。注意basic.reject一直以来都没有这个字段,所以basic.nack作为RabbitMQ的扩展协议引入。 当设置multiple为true,RabbitMQ将确认未完成的标签,并携带在确认信息中包含标签标示。正如其它的收到确认信息,作用域也是chan...
2018-07-15 23:06:34
913
翻译 rabbitmq.“消费端确认收到”和“推送者确认”(2)
消费端确认模式和数据安全性 当向消费者发送消息时,要考虑消息是否被处理(至少是否被消费者接收到)。因为想app,connection等都可能失败,这是基于数据安全的考虑。协议提供了一种机制,当消费者连接时,告知其连接上。是否可借助这种机制呢。 借助于这种确认模式,RabbitMQ可以确认发送成功,或者收到客户端的确认消息。手动发送应答信息,可以是肯定的也可以是否定的,分别使用如...
2018-07-15 20:51:52
584
翻译 rabbitmq.“消费端确认收到”和“推送者确认”(1)
前序 使用诸如rabbitmq一类的系统作为消息服务,实际中基本都是分布式系统。由于发送协议无法保证信息送达到伙伴的手里,也没法保证伙伴成功的处理这些消息。所以需要一种“确认机制”来确认传输和信息处理过程的状态。RabbitMQ的下的多个协议都有支持这个特性。本文基于AMQP 0-9-1进行介绍,但是理念也适用于其他类似的协议。 在“订阅者/消费者”到RabbitMQ服务器的"传输成功...
2018-07-13 18:35:05
551
翻译 rabbitmq.Our Extensions.Consumer Cancel: Consumer Cancel Notification/“取消消费”通知
Consumer Cancel Notification取消机制,有两个方面:一个是作为消费者,主动脱离不再接收消息二是,服务节点不提供消息供消费,消费需要被通知进而取消必要等待主动脱离不再接收消息:需要主动向服务node发出basic.cancel, 服务器回复basic.cancel.ok,则完成服务节点不提供消息供消费:一是,由于默认并不支持这点,客户端需要主动向服务节点声明这个能力。二是,...
2018-07-13 10:47:57
851
翻译 Distributed locks with Redis / Redis 实现分布式锁
在并发场景下,分布式锁有着非同一般的作用当然有很多博客讨论基于Redis实现分布式锁管理,但是方法多种多样,且有些设计简单但难以保证性能,有些则设计复杂。本篇文章的目的在于提供更加合理的一种“基于redis分布式锁的设计”。我们提供了一种称之为Redlock的设计方案,相信会更加可靠。我们希望社区可以对此进行讨论和反馈,也希望将其应用到更加复杂的场景中。实现在讨论我们的放案前,这里有些已有的实现作...
2018-06-27 19:57:33
1082
原创 android ContentProvider实现跨进程文件传输
1.前序:提到ContentProvider ,我们首先想到的是“增删查改”,数据库访问,有点雷雨jdbc 其实还提供的一个服务,共享文件。2.使用场景:1.进程之间共享文件数据2.由于权限问题,需要将数据迁移到低权限区域问题(我们知道Android自L开始,权限越加严格,很多文件不发轻易被外部访问)3.实例问题:A B 两个进程,且由于权限不可互访. B进程需要访问A进程数据怎么办呢?这里采用方...
2018-06-02 23:01:44
2628
原创 元注解/组合注解
好记性不如烂笔头,做个记录。1.我们所说的注解可分为两大类:元注解 和 组合注解2.元注解有四类:@Target@Retention@Documented@Inherited3.组合注解:@Override@suppresswarnings@@documented...........4.是否考虑过:如何将代码中的多个方法归为一类,并通过代码识别或拦截呢? 是否想偷懒,将变量的初始化全...
2018-05-16 20:41:53
317
原创 ThreadLocal
个人更偏向于将其看做一个"工具类".为何这么说呢, 应为看似操作这个类,其实真实的"数据存放地"在各自对象的线程(Thread). 更多是,只是借用ThreadLocal这个类来检查,找到当前所在的线程.下面会介绍如何和当前线程绑定,并放(set),如何取(get)数据:1.问题我们知道ThreadLocal为线程保存变量副本, 那这个ThreadLocal如何绑定的本线程呢?2.线程下的"...
2018-03-28 19:00:38
139
原创 Springboot+ibatis 事务控制
guthub:https://github.com/liubin192837/spring/tree/master/springbootIbatisTransaction1.首先声明开启事务@SpringBootApplication@EnableTransactionManagementpublic class SpringbootibatisApplication { public ...
2018-03-21 16:54:32
1321
原创 JAVA CAS
1.首先我们要明白CAS是compare And Set的缩写;意义是保证操作的原子性;如其名,主要操作是比较,设置。2.如何保证原子性呢?比如对a进行"+1"操作:取出V备份(备份用cp表示)、进行"+1"操作,比较cp和v是否相等,相等则将最新的复制给v.3.本质:原理同synchronized一样,不同是讲锁的处理丢给硬件处理。在硬件层次操作,性能必然快鱼语言的层次。4.底层实现可参考如下操...
2018-03-09 15:35:45
364
原创 RegistrantList消息机制
使用1.流程注册作为监听者:A>B#registerFor***通知监听者:B#notify*** > A#ourHandler2.注册监听类CLASS A{ private final int EVENT_**** = 4 Handler ourHandler = new OurHandler Class OurHandler ext
2018-02-01 19:51:32
459
原创 protobuf 初探
准备工作:1.protobuf jar包的下载.我使用的是protobuf-java-2.5.0.jar2.电脑安装protobuf:我们需要它来预处理代码。实际操作:1.准备文件×××.proto,这里我的是test.proto2.因为是基于java的使用。这里需要将proto文件转换为jave可使用的文件,最红输出test.java:protoc --jav
2017-11-23 13:49:02
148
原创 call network 注册状态判断判断/REGISTRATION_STATE
new GsmServiceStateTracker(){ mCi.registerForVoiceNetworkStateChanged mCi.registerForRadioStateChanged mCi.setOnRestrictedStateChanged}>>>>>>GsmServiceStateTra
2017-04-13 17:42:41
814
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人