微服务:微博Mesh服务化改造如何支撑?

大家好,我今天的分享主要围绕以下几点,首先跟大家简要介绍一下微博服务化的演进过程,其次是微博自研跨语言RPC 框架 Motan 实现的一些关键技术要点,主要是跨语言方面,再次,结合目前市面上的一些Service Mesh 实现对比,给出基于 Motan-Go 的更符合微博场景的Weibo Mesh 实现。最后,是我个人对于面向未来泛服务化架构的一些思考。

原创 推荐 点赞0 阅读360 收藏0 评论0 2 天前

华为云二面凉凉,网络方面一问三不知

计算机网络是现代信息社会的基础,人们的生活和生活越来越依赖于网络。作为一名合格的程序员,就应该上知天文下知地理,上班摸鱼之际,除了去网络上开车(手动狗头),还应该巩固一下自己的网络底层知识。这次面华为也就是抱着试一试的心态,面试过程就不与大家多说了,但事后确实意识到自己网络方面知识的欠缺,于是写了这篇文章,希望能跟大家一起进步。

原创 点赞0 阅读53 收藏0 评论0 2 天前

什么是微服务?如何建立微服务意识?

什么是微服务既然提到了微服务 就不得不介绍一下他们SpringcloudSpring Cloud是一系列框架的有序集合。它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用Spring Boot的开发风格做到一键启动和部署。

原创 推荐 点赞0 阅读326 收藏0 评论0 2 天前

华为二面险胜:我意识到懂网络方面知识的重要性

前言不知道大家有没有这种感觉,大学时学习计算机网络基础的时候,看到各种网络协议与硬件功能实现原理就头疼。但这些底层原理又是需要知道的,虽然网络协议这块好像属于网络工程师的范畴,但其实对Java程序员来说其实也是一个基础盘,比如Netty网络框架这块要手写一个RPC框架就会意识到知道TCP/IP协议的重要性了。

原创 点赞0 阅读59 收藏0 评论0 2 天前

双非学历,试水阿里,50连问险胜拿Offer

在网上看到一份挺有代表性的阿里面经,跟大家分享一下~前言在接触Java之前我接触的比较多的是硬件方面,用的比较多的语言就是C和C++。到了大三我才正式选择Java方向,到目前为止使用Java到现在大概有一年多的时间,所以Java算不上很好。刚开始投递的时候,实习刚辞职,也没准备笔试面试,很多东西都忘记了。所以,刚开始我并没有直接就投递阿里,毕竟心里还是有一点点小害怕的。

原创 点赞0 阅读41 收藏0 评论0 2 天前

微处理架构——处理复杂事物,细说微服务架构的优势与不足

摘要微处理架构——处理复杂事物许多公司,比如Amazon、eBay和NetFlix,通过采用微处理结构模式解决了上述问题。其思路不是开发一个巨大的单体式的应用,而是将应用分解为小的、互相连接的微服务。微服务正在博客、社交媒体讨论组和会议演讲中获得越来越多的关注,在Gartner的2014 Hype Cycle上它的排名非常靠前。

原创 点赞0 阅读50 收藏0 评论0 2 天前

一篇文章给你把布隆过滤器的讲的明明白白

不知道从什么时候开始,本来默默无闻的布隆过滤器一下子名声大燥,在面试中面试官问到怎么避免缓存穿透,你的第一反应可能就是布隆过滤器,缓存穿透=布隆过滤器成了标配,但具体什么是布隆过滤器,怎么使用布隆过滤器不是很清楚,那今天我们就来把它说清楚,讲明白。。缓存穿透大家看下这幅图,用户可能进行了一次条件错误的查询,

原创 推荐 点赞0 阅读303 收藏0 评论0 2 天前

华为鸿蒙OS正式开源,安卓要凉了?

鸿蒙 OS 2.0 正式开源9月10日,在2020年华为开发者大会上,华为消费者业务CEO余承东宣布,鸿蒙OS升级至2.0版本。最重要的是,鸿蒙OS 2.0面向应用开发者发布Beta版本,9月10日面向大屏、手表、车机发布,2020年12月,面向手机发布。余承东说,明年华为手机将全面支持鸿蒙OS 2.0。

原创 点赞0 阅读54 收藏0 评论0 2 天前

你的Chrome有这29款插件不?

前言相信很多人都在使用 Chrome 浏览器,其流畅的浏览体验得到了不少用户的偏爱,但流畅只是一方面, Chrome 最大的优势还是其支持众多强大好用的扩展程序(Extensions)。下面的很多插件都是工具插件,看完保证你工作效率、心情提高1倍。1、OneTab:一键合并 tabTab 过多的时候,要关闭浏览器的时候OneTab可以帮助你快速的保存、整理浏览器。

原创 点赞0 阅读34 收藏0 评论0 2 天前

阿里二面倒在微服务,熬夜苦肝二个月吃透357页微服务架构手册,成功入职美团!

当下的互联应用,业务更加复杂,用户访问更高,开发迭代要求更快,落地微服务架构成为业界最普遍的做法,但也引入了系统的复杂性,要解决服务实例太多、服务调用关系杂乱、服务调用链路太长等典型问题。基于 Spring Boot 的 Spring Cloud 框架,则很好地解决了以上的问题,不论企业面试还是实战开发,Spring Cloud 都成为后端工程师的必备技能之一。

原创 点赞0 阅读32 收藏0 评论0 2 天前

颠覆认知!微服务架构及设计模式还能这么理解,不愧是阿里架构师

前言虽然软件行业没有摩尔定律这说,但是软件技术的发展速度想必也是远超任何人想象的。今天这篇文章主要与大家聊聊微服务架构,关于微服务网络上的概论有太多太多,在这里我就不多赘述了。总的来说微服务就是演进式的应用架构。从目前来看,微服务架构更适于演进,因为它的架构是可抛弃的,可以很快地享受新技术带来的福利。否则,当新技术的应用成本看上去比较高时,我们可能很难做出改变的决策。

原创 点赞0 阅读43 收藏0 评论0 2 天前

字节跳动成功4面通关!熬夜爆肝29天,疯狂刷题,终于圆了大厂梦!

写在开篇闲话(长话短说):今年的开端有些特殊,疫情的缘故对我们的生活造成了很大的影响,竞争力也是越来越大这对于一名求职者来说,更是添上了一堵“难墙”,尽管如此,我们也不能够错失机会,该抓住的就要抓住。提前做好准备,投简历、顺利面试,定会拿下心仪的offer,而我也总算取得自己想要的成功,字节跳动成功4面通关。

转载 点赞0 阅读71 收藏0 评论0 2 天前

就这一次把大学四年没学会的TCP/IP彻底搞懂,从此不再简单“ping”

前言虽然在大学的时候大家都学过网络协议 ,但是肯定感觉网络协议的知识点非常多 ,非常复杂。学的时候就浑浑噩噩,真正到了实践中更是糊里糊涂,一旦工作中遇到了网络问题,除了会简单地 ping 几下 ,基本没有什么解决问题的思路。 然而当拿起书来学习,或者看一些官方文档的时候,各种生僻的专业词汇马上扑面而来,每了解其中的一个词汇 ,都要看多 篇文章,读多本书,

原创 点赞0 阅读45 收藏0 评论0 2 天前

6000字告诉你Zookeeper核心ZAB协议就这么简单

背景我们都知道 Zookeeper 是基于 ZAB 协议实现的,在介绍 ZAB 协议之前,先回顾一下 Zookeeper 的起源与发展。Zookeeper 究竟是在什么样的时代背景下被提出?为了解决了哪些棘手的问题?Zookeeper 最早起源于雅虎研究院的一个研究小组。当时,研究人员发现,在雅虎的很多大型系统基本都需要依赖一个类似的系统来进行分布式协调,但是这些系统都存在分布式单点问题,

原创 点赞0 阅读26 收藏0 评论0 2 天前

自学福音!枯燥的TCP/IP知识看这篇就够了!

前言计算机网络是一门基础课程,但是老师所讲的东西无非起到一个抛砖引玉的作用。然而对于需要自学的人来说,无疑是更难的。前路漫漫~~计算机网络本来就是比较枯燥的,文章内容较多,建议读者耐心看完这篇文章,希望大家看完后都能有所收获。先把这篇文章的大致结构放上来。推荐观看:清华架构师权威讲解Socket网络通信、TCP/IP通信原理、HTTPS底层原理预备知识

原创 点赞0 阅读44 收藏0 评论0 2 天前

2020刚翻篇疫情又来袭,程序员要如何保住自己饭碗的同时抓住那一丝契机快速晋升?

写在开篇的思路2020年是多灾难的一年,对于我们每个人来说,健康地活着比什么都重要。受到疫情的影响,很多公司都过得比较艰难,裁员更是普遍,所以对大部分来说保住饭碗就很不错了,更别说什么跳槽晋升了。但今年的我,似乎要比很多人幸运,专科出身,起点很低了,在看重学历的一众大厂中杀出一条血路。工作两年我就跳槽进入了苏宁,在苏宁待了3年,现在竟到了阿里。

原创 点赞0 阅读39 收藏0 评论0 2 天前

花了10000小时从外包到大厂,鬼知道我经历了什么!但回头看来这一路辛酸还是值得的!

前言:没有绝对的天才,只有持续不断的付出。对于我们每一个平凡人来说,改变命运只能依靠努力+幸运,但如果你不够幸运,那就只能拉高努力的占比。2020年7月,我有幸成为了字节跳动的一名Java后端开发,正如标题所说,我从外包辞职了,10000小时后,走进字节跳动拿下了offer。相信同行都清楚,从外包进大厂有多难,运气之余,也离不开我自己的脚踏实地,所幸每踏出的一步都留下了厚厚的脚印。

原创 点赞0 阅读34 收藏0 评论0 2 天前

亿级流量架构之网关设计思路、常见网关对比

本文准备围绕七个点来讲网关,分别是网关的基本概念、网关设计思路、网关设计重点、流量网关、业务网关、常见网关对比,对基础概念熟悉的朋友可以根据目录查看自己感兴趣的部分。什么是网关网关,很多地方将网关比如城门, 没什么问题, 但是需要区分网关与网桥的区别,网桥工作在数据链路层,在不同或相同类型的LAN之间存储并转发数据帧,必要时进行链路层上的协议转换。

原创 点赞0 阅读59 收藏0 评论0 2 天前

最新面经出炉:双非一本学历裸辞奋战4个月,从外包跳进字节,给到29k*14薪!

前言:没有绝对的天才,只有持续不断的付出。对于我们每一个平凡人来说,改变命运只能依靠努力+幸运,但如果你不够幸运,那就只能拉高努力的占比。2021年4月,我有幸成为了字节跳动的一名Java后端开发,正如标题所说,我从外包辞职了,10000小时后,走进字节跳动拿下了offer。相信同行都清楚,从外包进大厂有多难,运气之余,也离不开我自己的脚踏实地,所幸每踏出的一步都留下了厚厚的脚印。

原创 点赞0 阅读46 收藏0 评论0 2 天前

Serverless无服务器架构

Serverless体系结构是一种应用程序设计,它包含第三方“后端即服务”(BaaS)服务,和/或包含在“功能即服务”(FaaS)平台上的托管临时容器中运行的自定义代码。通过使用这些思想,以及类似于单页应用程序的相关思想,这样的体系结构消除了对传统的总是在服务器上的组件的大量需求。无服务器体系结构可以从显著降低的操作成本、复杂性和工程提前期中获益,

原创 推荐 点赞0 阅读325 收藏0 评论0 2 天前

领域驱动设计(DDD)理论与方法

DDD由来与优势软件架构设计的真正目的是解决软件复杂度带来的问题,软件复杂度由来主要由三方面:高并发场景下的对软件高性能要求、业务场景对软件高可用要求、持续变化的业务以及业务扩张和增加需求对软件扩展性的要求,除此外,对低成本、安全、软件规模也一定程度上增加了软件设计的复杂度。在解决每个复杂度维度上,分别有各自的应对解决方案

转载 点赞0 阅读9 收藏0 评论0 2 天前

synchronized关键字这样理解你是不是就会懂了?

说说自己对于synchronized关键字的了解synchronized关键字用于解决多个线程之间访问资源的同步性,synchronized关键字可以保证被它修饰的方法或者代码块在任意时刻只能有一个线程执行。值得注意的是,在Java早期,JDK1.6之前,synchronized属于重量级锁,效率低下。原因在于:监视器锁【monitor】依赖于底层操作系统的Mutex Lock实现,Java的线程是映射到操作系统的原生线程之上的。如果要挂起或唤醒一个线程,都需要操作系统帮忙完成,而操作系统

原创 点赞0 阅读154 收藏0 评论0 4 天前

性能调优遇到瓶颈?阿里技术官甩出并发编程神仙笔记,理论实战齐飞!

前言一直以来,硬件的发展极其迅速,在多核的CPU的背景下,催生了并发编程的趋势,通过并发编程的形式可以将多核CPU的计算能力发挥到极致,性能得到提升。面对复杂业务模型,并行程序会比串行程序更适应业务需求,而并发编程更能吻合这种业务拆分。正是因为这些优点,使得多线程技术能够得到重视,这个技术也是一名CS学习者应该掌握的。但这个技术对于刚入行的小白来说总是觉得高深莫测,不明所以,也找不到好的学习资料。本着好东西就是要拿出来分享的原则,于是乎互联网雷锋(小编我)就为大家收罗了一套完整的资料供大家学习,适用

原创 点赞0 阅读145 收藏0 评论0 4 天前

(从进程/线程视角看内存)鸿蒙内核源码分析

这篇文章说说内存,内存的管理是极其复杂的模块,涉及到非常多概念,光地址就有逻辑,线性,物理地址三个,网上文章很多,参差不齐,没有很好基础或实战经验的同学基本得懵掉,本篇最后也有这些概念介绍。系列篇打算用三篇来讲述鸿蒙内核的内存管理机制。由浅入深,层层递进。我们换个视角切入,将从进程和线程创建的视角看内存的运作机制。为何从进程和线程角度?两个原因:1.内存就是给他们使用的,只是分了内核空间和用户空间。用户空间的进程分配用到了虚拟内存,线程(task)需要分配栈空间 2.系列文章对进程和线程的管理和调度已经

原创 点赞0 阅读149 收藏0 评论0 4 天前

团灭LeetCode!Alibaba技术官甩出的大师级算法宝典真的太香了!

前言:说到算法,相信每一个程序员和接触过程序员的朋友都不会陌生,直到现在算法一直占着面试必问的地位,而算法面试也仍是当前最适合公司筛选程序员的方法之一,在阿里,字节跳动、华为等公司带动下,无论是求职者还是面试官,都逐渐认识到算法面试其实是相对高效、准确且公平的筛选机制,可能你会觉得算法面试有几个实际工作中用到的,不过是“面试造火箭,工作拧螺丝”罢了,那我想说你并没有认识到算法面试的真正目的。说简单点,算法面试就是为了筛选出足够聪明要么足够勤奋的人,在一个算法题中,不仅考察你的沟通能力,你的逻辑思维能

原创 点赞0 阅读148 收藏0 评论0 4 天前

为什么阿里巴巴开发手册中禁用static修饰SimpleDateFormat?

“在项目开发过程中经常遇到时间处理,但是你真的用对了吗,理解阿里巴巴开发手册中禁用static修饰SimpleDateFormat吗通过阅读本篇文章你将了解到: 为什么需要LocalDate、LocalTime、LocalDateTime【java8新提供的类】 java8新的时间API的使用方式,包括创建、格式化、解析、计算、修改 为什么需要LocalDate、LocalTime、LocalDateTime Date如果不格式化,打印出的日期可读性差 TueS...

原创 点赞0 阅读145 收藏0 评论0 4 天前

从CPU缓存看缓存的套路你是否知道?

一、前言不同存储技术的访问时间差异很大,从计算机层次结构可知,通常情况下,从高层往底层走,存储设备变得更慢、更便宜同时体积也会更大,CPU和内存之间的速度存在着巨大的差异,此时就会想到计算机科学界中一句著名的话:计算机科学的任何一个问题,都可以通过增加一个中间层来解决。二、引入缓存层为了解决速度不匹配问题,可以通过引入一个缓存中间层来解决问题,但是也会引入一些新的问题。现代计算机系统中,从硬件到操作系统、再到一些应用程序,绝大部分的设计都用到了著名的局部性原理,局部性通常有如下两种不同的形式..

原创 点赞0 阅读157 收藏0 评论0 4 天前

首发!华为大牛整理出整套2700页计算机网络相关学习资料,程序员福音!

写在前面不得不说TCP是一个非常复杂的协议,因为它要解决很多问题,而这些问题又带出了很多子问题和阴暗面。而且学习TCP的过程是比较痛苦的过程,但是学习过程还是会让人有很多收获的。我们现在已经进入了“互联网+”时代,很多人也都开始关注互联网行业,但是很多从业人员却对IP通道知之甚少。市面上说多也不多,说少也不少,TCP的学习资料比较杂,今天就将我搜集来的学习资料贡献出来。由于文章篇幅不能太多,考虑的观感,以下内容我只展示了这五份笔记的要点部分,总计2700页之多,够我们研究一阵子了,下面就.

原创 点赞0 阅读105 收藏0 评论0 4 天前

一文入魂,2万字带你彻底搞懂AQS及其组件的核心原理

前言JDK1.5以前只有synchronized同步锁,并且效率非常低,因此大神Doug Lea自己写了一套并发框架,这套框架的核心就在于AbstractQueuedSynchronizer类(即AQS),性能非常高,所以被引入JDK包中,即JUC。那么AQS是怎么实现的呢?本篇就是对AQS及其相关组件进行分析,了解其原理,并领略大神的优美而又精简的代码。AbstractQueuedSynchronizerAQS是JUC下最核心的类,没有之一,所以我们先来分析一下这个类的数据结构。.

原创 点赞0 阅读109 收藏0 评论0 4 天前

并发编程 | 线程池从入门到成神!

一、为什么要用多线程使用多线程,可以把一些大任务分解成多个小任务来执行,多个小任务之间互不影响,同时进行,这样,充分利用了cpu资源。二、java中简单的实现多线程方式继承Thread类,实现run方法classMyTreadextendsThread{publicvoidrun(){System.out.println(Thread.currentThread().getName());}}实现Runable接口,实现run方法cl...

原创 点赞0 阅读115 收藏0 评论0 4 天前
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
写文章