- 博客(23)
- 收藏
- 关注
转载 Sidecar模式:下一代微服务架构的关键
Sidecar设计模式正在收到越来越多的关注和采用。作为Service Mesh的重要要素,Sidecar模式对于构建高度高度可伸缩、有弹性、安全且可便于监控的微服务架构系统至关重要。而Service Mesh也已经被证明,正在改变企业IT的“游戏规则”,它降低了与微服务架构相关的复杂性,并提供了负载平衡、服务发现、流量管理、电路中断、遥测、故障注入等功能特性。什么是Sidecar模式?Si...
2019-05-31 14:19:22 300
转载 为什么大公司一定要使用DevOps?
0 DevOps的意图究竟什么是DevOps? 要想回答这个问题,首先要明确DevOps这个过程参与的人员是谁?即开发团队和IT运维团队!那么,DevOps的意图是什么呢?即在两个团队之间,建立良好的沟通和协作,更快更可靠的创建高质量软件!事实上,并不是这两个团队之间的协作帮助交付了更好的软件,而是“开发”和“运维”团队之间的统一导致了软件的改进,并以更快的速度交付。我们不要忘记DevOp...
2019-05-31 11:00:54 212
转载 没有人喜欢,但却不得不选择的敏捷开发
敏捷开发是一种从1990年开始逐渐引起人们广泛关注的新型软件开发方式,它是具有应对快速变化的需求的软件开发能力。相对于非敏捷开发,它是一种以用户需求为核心,持续迭代,循序渐进的开发方式。敏捷绝非某一种特定的开发方法,它只是一种应对快速变化的需求的一种软件开发能力。所以敏捷开发并不在意需求是否变更,即便是在项目开发的后期,敏捷开发依然乐于接受需求的变更。这一点对于取得客户的满意度来说,无疑是非常...
2019-05-31 10:42:52 203
转载 微服务架构下分布式事务解决方案——阿里GTS
1 微服务的发展微服务倡导将复杂的单体应用拆分为若干个功能简单、松耦合的服务,这样可以降低开发难度、增强扩展性、便于敏捷开发。当前被越来越多的开发者推崇,很多互联网行业巨头、开源社区等都开始了微服务的讨论和实践。Hailo有160个不同服务构成,NetFlix有大约600个服务。国内方面,阿里巴巴、腾讯、360、京东、58同城等很多互联网公司都进行了微服务化实践。当前微服务的开发框架也非常多,...
2019-05-27 22:42:45 147
转载 @Value取不到值的原因(引用application.properties中自定义的值)
在spring mvc架构中,如果希望在程序中直接使用properties中定义的配置值,通常使用一下方式来获取: @Value("${tag}") private String tagValue; 但是取值时,有时这个tagvalue为NULL,可能原因有:使用static或final修饰了tagValue,如下: private static S...
2019-05-23 10:28:42 5784 1
转载 我只是下了个订单,鬼知道我在微服务里经历了什么
当我傻啊,用户在电商网站购买成功,还在微服务中,那肯定就是有一套微服务架构的电商系统。设计一套电商系统还不简单简单想象一下,既然是一个电商系统,有用户去购买,就肯定得有一个用户模块,购买什么东西总不是西北风吧,购买肯定是商品吧,省掉购物车,就得有商品模块吧,商品总得有库存吧,库存就暂时跟商品放一起吧,什么仓储物流先别管,就当作是虚拟商品好了,反正题目也没说不能是虚拟商品^_^,购买成功了,...
2019-05-22 18:18:29 429
转载 Intellij IDEA运行报Command line is too long解法
报错内容:Error running 'ServiceStarter': Command line is too long. Shorten command line for ServiceStarter or also for Application default configuration.解法:修改项目下 .idea\workspace.xml,找到标签<compone...
2019-05-22 09:48:56 249
转载 spring boot 工具类注入 restTemplate
前言: 在我们用springboot 开发项目的过程用,会有调用第三方http接口的情况,这时我们使用spring的RestTemplate,使用更方便。1,我们可以自己看下RestTemplate源码,提供了好多请求格式,你可以自己选择使用。具体方法说明网上都有,常用的getForEntity,getForObject,postForObject,postForEntity,exchange...
2019-05-20 17:39:08 3074
转载 一文带你了解什么是API和SDK
随着软件规模的日益庞大,开发者常常需要把复杂的系统划分成小的组成部分,这个时候,编程接口的设计就显得尤为重要。良好的接口设计可以降低系统各部分的相互依赖,提高组成单元的内聚性,降低组成单元间的耦合程度,从而提高系统的维护性和扩展性。而对于接口,最让大家耳熟能详的莫过于API和SDK。这两者都有哪些特点,作为开发者又该如何选择,今天的这篇文章,将给你全方位的解答。什么是API?如果你在百...
2019-05-09 17:46:40 984
转载 2张图快速了解HTTP报文的基本知识
通过本文的2张思维导图,可以快速了解:HTTP请求报文的结构HTTP响应报文的结构0.基本知识HTTP报文:HTTP协议交互的信息请求报文:客户端发送的HTTP报文响应报文:服务端发送的HTTP报文4种HTTP首部字段类型:(1)通用首部字段请求报文和响应报文都会使用的首部(2)请求首部字段请求报文使用的首部(3)响应首部字段响应报文使用的首部...
2019-05-09 17:34:45 178
转载 为什么强烈禁止开发人员使用isSuccess作为变量名
摘要:在日常开发中,我们会经常要在类中定义布尔类型的变量,比如在给外部系统提供一个RPC接口的时候,我们一般会定义一个字段表示本次请求是否成功的。 关于这个"本次请求是否成功"的字段的定义,其实是有很多种讲究和坑的,稍有不慎就会掉入坑里,作者在很久之前就遇到过类似的问题,本文就来围绕这个简单分析一下。在日常开发中,我们会经常要在类中定义布尔类型的变量,比如在给外部系统提供一个RPC接口...
2019-05-09 17:25:28 171
转载 HR问“你目前有几个offer”,聪明人会怎么说?
昨天,一个读者和我聊天,说起自己最近被虐的面试经历。他985毕业,工作3年,看中了一家月薪1.5万的工作,准备跳槽。虽然在北京不算高,但也还不错,他的各方面条件也很匹配,拿下不成问题。可没想到HR那关都没过,就收到了拒信。他特别不能理解,找了很多内部人士问了一圈,得到的结论是:HR觉得他没诚意。我问他是不是表现得太自负,他说自己完全没感觉。想了半天,可能是被问到拿...
2019-05-08 16:42:32 5612
转载 redis的setnx锁到了超时时间失效,并发的问题
SETNX命令简介命令格式SETNX key value将 key 的值设为 value,当且仅当 key 不存在。若给定的 key 已经存在,则 SETNX 不做任何动作。SETNX 是SET if Not eXists的简写。返回值返回整数,具体为- 1,当 key 的值被设置- 0,当 key 的值没被设置例子redis> SETNX ...
2019-05-08 14:13:01 4194
转载 分布式锁的几种实现方式
分布式锁的几种实现方式目前几乎很多大型网站及应用都是分布式部署的,分布式场景中的数据一致性问题一直是一个比较重要的话题。分布式的CAP理论告诉我们“任何一个分布式系统都无法同时满足一致性(Consistency)、可用性(Availability)和分区容错性(Partition tolerance),最多只能同时满足两项。”所以,很多系统在设计之初就要对这三者做出取舍。在互联网领域的绝大多数...
2019-05-08 14:02:21 122
转载 Joda-Time DateTimeFormatter 日期格式化与解析
一、前言在进行开发工作中,经常会面对两种操作。1、把时间对象格式化成字符串后存储下来1、把格式化好的字符串解析成时间对象Joda-Time为这两个核心需求的解决方案就是DateTimeFormatter。额外提一点,DateTimeFormatter在格式化和解析时是支持时区的。二、核心对象:2.1 DateTimeFormatter日期格式化与解析2.2 LocalD...
2019-05-08 09:30:31 8083
转载 大厂是怎么招聘Java技术岗位的?
一、写在前面最近收到不少读者反馈,说自己在应聘一些中大型互联网公司的Java工程师岗位时遇到了不少困惑。这些同学说自己也做了精心准备,网上搜集了不少Java面试题,然而实际去互联网公司面试才发现,人家问的,和你准备的对不上号,这就很尴尬了。。。二、先来体验一个真实的面试连环炮现在一些中大型互联网公司的面试官,在面试候选人时,一般都会采取连环炮的策略来深挖一个候选人的技术水平。举个...
2019-05-08 09:28:36 447 1
转载 技术选型:Sentinel vs Hystrix
Sentinel是阿里中间件团队研发的面向分布式服务架构的轻量级高可用流量控制组件,于今年7月正式开源。Sentinel 主要以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度来帮助用户提升服务的稳定性。大家可能会问:Sentinel 和之前经常用到的熔断降级库 Netflix Hystrix 有什么异同呢?本文将从资源模型和执行模型、隔离设计、熔断降级、实时指标统计设计等角度将 Se...
2019-05-08 09:21:05 242
转载 Sentinel 成为 Spring Cloud 官方推荐的主流熔断降级方案
摘要:近日,Sentinel 贡献的spring-cloud-circuitbreaker-sentinel模块正式被Spring Cloud社区合并至 Spring Cloud Circuit Breaker,由此,Sentinel 加入了 Spring Cloud Circuit Breaker 俱乐部,成为 Spring Cloud 官方的主流推荐选择之一。近日,Sentinel...
2019-05-08 09:13:49 469
转载 Java日志正确使用姿势
摘要:关于日志,在大家的印象中都是比较简单的,只须引入了相关依赖包,剩下的事情就是在项目中“尽情”的打印我们需要的信息了。但是往往越简单的东西越容易让我们忽视,从而导致一些不该有的bug发生,作为一名严谨的程序员,怎么能让这种事情发生呢?所以下面我们就来了解一下关于日志的那些正确使用姿势。前言关于日志,在大家的印象中都是比较简单的,只须引入了相关依赖包,剩下的事情就是在项目中“尽情”的打...
2019-05-08 09:11:34 162
转载 阿里的微服务注册中心组件Nacos比 Eureka 更强?
什么是 Nacos?Nacos 是阿里巴巴推出来的一个新开源项目,这是一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。 Nacos 是构建以“服务”为中心的现代应用...
2019-05-08 09:10:09 11798 1
转载 istio 是用来做什么的?本文为你解答
如果你比较关注新兴技术的话,那么很可能在不同的地方听说过 Istio,并且知道它和 Service Mesh 有着牵扯。这篇文章可以作为了解 Istio 的入门介绍,了解什么是 Istio,Istio 为什么最近这么火,以及 Istio 能给我们带来什么好处。什么是 Istio?官方对 Istio 的介绍浓缩成了一句话:An open platform to connect, ...
2019-05-08 09:05:34 1673
转载 我们经常说的限流应该怎么做?
一、我们为什么需要限流在微服务复杂拓扑的情况下,限流是保障服务弹性和拓扑健壮的重中之重。想一想,如果业务推出了一个秒杀活动,而你没有任何的限流措施;当你搭建了一个账号平台,而完全没有对十几个业务方设定流量配额……这些很有可能在特定场合下给你的产品带来大量的业务损失和口碑影响。我们通常重点关注产品业务层面正向和逆向功能的完成,而对于逆向技术保障,这一点则是企业发展过程中很容易...
2019-05-07 14:17:32 4979
转载 “我是技术总监,你干嘛总问我技术细节?”
熟悉我的人都知道,我有位从事猎头工作的老婆,平时的工作是专为某些医疗、金融投资机构提供中、高级岗位职位人才招聘及相关咨询服务。相比之下,这项工作对业务专业性与人脉关系要求较高,经常会被行业大咖问:“这家公司你觉得怎么样?和某某公司比,你觉得他们之间区别是啥?”如果回答的不够专业,或者被对方感觉很水,不仅当场尴尬,而且会在信任上大打折扣。对猎头这项工作来说,一旦失去了信任,就意味着确定性...
2019-05-05 16:56:07 313
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人