- 博客(141)
- 收藏
- 关注
原创 ServiceComb介绍与框架源码分析
1. 介绍ServiceComb是华为开源的微服务解决方案,支持开箱即用、高性能通信、兼容SpringCloud生态、多语言支持、分布式事务等。关键特性:开箱即用:支持服务注册发现,负载均衡,熔断容错、分布式事务(Pack)等机制,很容易集成到微服务中高性能通信:基于Vertx实现纯异步内核,支持同步和异步调用,提供高吞吐量、低时延的服务间通信兼容SpringCloud生态:支持以spring-boot-starter的方式集成到SpringCloud生态中多语言支持:支持Java、Go语言微
2020-11-03 17:45:05
2678
1
转载 浅谈“HTAP”
文章转载自: 浅谈“HTAP”HTAP是近些年来比较火的一个概念,下面就聊聊其前世今生及技术特点。1. 数据应用类别根据数据的使用特征,可简单做如下划分。在选择技术平台之前,我们需要做好这样的定位。1.1 OLTP联机事务处理OLTP(On-Line Transaction Processing),OLTP是事件驱动、面向应用的,也称为面向交易的处理过程。其基本特征是前台接收的用户数据可以立即传送到计算中心进行处理,并在很短的时间内给出处理结果,是对用户操作的快速响应。例如银行类、电子商务类.
2020-09-01 16:46:59
3840
原创 MySQL中的CHARSET和COLLATE关键字
MySQL中使用命令SHOW CREATE TABLE t可以查看建表语句,如下所示,我们可以看到描述中有两个关键字CHARSET和COLLATE,其中CHARSET可能很多人都大概知道,但是对COLLATE了解的人可能就比较少了。这篇文章就简单介绍一下MySQL中的CHARSET和COLLATE这两个关键字。CREATE TABLE `t` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(20) DEFAULT NULL, PRI
2020-08-12 12:47:24
7398
原创 Python requests库核心源码解析
Requests is an elegant and simple HTTP library for Python, built for human beings.Python requests是最常用的Python第三方库之一,可用于发送HTTP请求,其采用了直观的API设计风格,使用起来非常简单方便。Requests库是出自于大神 Kenneth Reitz 之手,我之前看过他写的《Python编程之美》,这本书可以让我们编写的代码更Pythonic,工程结构更加优美。Requests库的源码地.
2020-08-07 18:20:17
4381
2
原创 Python asyncio库核心源码解析
0 前言Python asyncio库是由Python之父Guido亲自主持开发的Python异步I/O库,Python3.6之后已正式成为标准库中的一员,其提供了async/await语法支持原生协程,使得在Python中进行异步编程变得非常简单。阅读这篇文章之前最好先阅读文章深入理解Python异步编程,了解一下Python异步编程的发展过程。早期,Python是基于生成器和事件循环来实现的异步编程,当前的async/await原生协程的内部实现机制和早期的基于生成器的实现方案其实也是基本一致的,
2020-08-05 19:50:55
2222
转载 深入理解Python异步编程
深入理解Python异步编程文章转载自: 驹说码事,内容有部分修改。0 前言很多朋友对异步编程都处于“听说很强大”的认知状态。鲜有在生产项目中使用它。而使用它的同学,则大多数都停留在知道如何使用 Tornado、Twisted、Gevent 这类异步框架上,出现各种古怪的问题难以解决。而且使用了异步框架的部分同学,由于用法不对,感觉它并没牛逼到哪里去,所以很多同学做 Web 后端服务时还是采用 Flask、Django等传统的非异步框架。从上两届 PyCon 技术大会看来,异步编程已经成了 P
2020-08-04 16:45:28
1102
原创 Docker学习笔记 — 对Docker容器进行资源限制
我们在实际场景中使用Docker容器启动服务时经常会遇到这种问题,当同一个宿主环境下同时运行多个容器时,如果一个服务特别耗资源或者负载突然陡增时,其对资源的抢占往往会影响到同一个环境中其他服务的正常运行。Docker基于linux cgroup技术,支持对Docker容器进行资源限制,这可以非常有效地避免同一个环境中多个服务间的资源竞争。如果需要对容器的可用资源限制在4G内存+1G Swap空间...
2018-12-10 23:36:22
1180
原创 使用ELK搭建日志集中平台
1. 背景如今越来越多的产品采用微服务架构,整个系统会被拆分成若干个服务,然后可被独立部署到不同的服务器上,服务分散在不同的环境中给团队开发和运维会带来如下常见问题:开发人员通常无生产环境服务器权限,当生产环境出现故障,开发人员很难及时查看到相应服务的日志;服务日志分散在多个服务器上,查询起来非常不方便;日志通常以文件的形式保存于各服务器上,缺乏快速检索日志的机制;当系统越来越庞大,我...
2018-12-10 00:22:01
533
原创 MySQL数据库备份: mysqldump VS xtrabackup
MySQL数据库备份工具比较最近使用了公司的一个项目管理工具进行团队任务管理,本来这个工具使用起来很方便的,但是前几天突然发现最近一段时间做的更新操作全都消失不见了,找工具的运维人员也恢复不回来,感觉这个工具再使用下去隐隐有些担忧。从这个事情上深深体会到了数据备份的重要性,我们生产环境上的数据如果没有做任务安全措施就跟裸奔一样,毫无安全感,随便出现一点状况就可能导致数据丢失。针对数据库的数据保...
2018-10-12 01:00:59
3682
转载 使用Spring Data JPA进行数据访问
Spring Data JPA 是 Spring 基于 ORM 框架、JPA 规范的基础上封装的一套JPA应用框架,可使开发者用极简的代码即可实现对数据的访问和操作。它提供了包括增删改查等在内的常用功能,且易于扩展!学习并使用 Spring Data JPA 可以极大提高开发效率! spring data jpa让我们解脱了DAO层的操作,基本上所有CRUD都可以依赖于它来实现。1....
2018-05-21 00:33:10
828
原创 Java关系型数据库持久化框架汇总
多年以来,关系型数据库一直是Java企业级应用中的统治者。对关系型数据库的操作从最开始的直接使用原生JDBC开始,到后来Spring基于JDBC开发了JDBC模板,再到一大批ORM框架的出现,大大简化了对数据库的操作,包括Hibernate,iBATIS,JDO以及JPA等,最后是Spring Data JPA几乎给我们提供了一个完美的数据库操作方案,开发应用非常方便。这里对这几种类型的框架做一个...
2018-05-20 23:22:05
6922
1
转载 JPA注解介绍
1. @Entity(name=”EntityName”)必须,name为可选,对应数据库中一的个表 @Entity //标识这个pojo是一个jpa实体 public class Users implements Serializable { } 2. @Table(name=”“,catalog=”“,schema=”“)可选,通常和@Entity配...
2018-05-20 17:41:22
1250
原创 UT单元测试总结实践篇
在实际进行单元测试的过程中,我们会发现被测代码通常会调用一些外部依赖或者尚未实现的方法,导致编写单元测试代码相当困难。针对这种情况,我们就需要对这些依赖的对象进行伪造注入,使得被测代码能够顺利运行,并能够对运行结果进行验证。Java开发中常用的Mock框架包括PowerMock, JMockit, Mockito, EasyMock, JMock等等,其中PowerMock是在Mockito和...
2018-03-15 23:40:05
7449
1
原创 Ansible学习笔记--使用ansible管理windows集群
最近工作中需要统一管理一批Linux和Windows机器,实现应用的自动化部署。刚开始直接使用的ssh登录到目标机器进行部署,Linux机器上面没什么问题,但是Windows上面需要提前安装并配置好ssh server。当时选用freesshd作为ssh server,虽然成功实现了自动化,但是因为freesshd已经很久没更新了,不符合公司的安全规范,所以就重新调研,最后选择了Ansible。An
2017-10-22 22:13:43
6466
3
原创 Ansible学习笔记--Ansible安装及使用方法
Ansible是一个简单高效的自动化运维管理工具,用Python开发,集合了众多运维工具(puppet, chef等)的优点,可用于管理大批量机器,实现并发地在多台机器上部署应用、安装软件、执行命令、配置和编排任务。
2017-10-22 21:03:34
1568
原创 安装pycrypto出现“fatal error: Python.h: No such file or directory”错误
安装pycrypto出现“fatal error: Python.h: No such file or directory”错误
2016-06-01 12:20:37
7302
原创 安装Python mysqlclient出现“OSError: mysql_config not found”错误
安装Python mysqlclient出现“OSError: mysql_config not found”错误
2016-06-01 12:15:11
29334
原创 部署kubernetes出现“etcd cluster is unavailable or misconfigured”错误
部署kubernetes出现“etcd cluster is unavailable or misconfigured”错误
2016-06-01 12:08:36
31363
1
原创 K8S中pod在挂载volume时出现FailedMount错误(exit status 32)
K8S中pod在挂载volume时出现FailedMount错误(exit status 32)
2016-01-07 22:12:43
29328
2
转载 Ubuntu 14.04中使用sublime text 3无法输入中文的问题
Ubuntu 14.04中使用sublime text 3无法输入中文的问题
2015-11-24 15:26:57
795
原创 Docker学习笔记 — 配置国内免费registry mirror
配置国内免费registry mirror,加快Docker镜像拉取速度
2015-10-14 16:14:58
40574
3
原创 Works Applications2016校园招聘 — Travel Information Center
Works Applications2016校园招聘 — Travel Information Center
2015-09-26 21:59:45
5123
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人