实战
上进唯实战可得,突破绝技成长瓶颈
手记
分享经验交流心得,学习前沿流行技术
-
架构师成长进阶方式
一、基础能力语言能力java:生态最好的互联网语言,框架丰富,成熟,实现度高php:最容易上手的简单互联网语言nodejs:异步机制理解语言go:后来居上的最流行的互联网语言.net:不建议学习数据结构和算法数据结构:存储数据的方法算法:操作数据的方法常用数据结构:数组,链表,map,队列,堆,栈等算法:查找算法,排序算法操作系统能力linux:centos,ubuntu(docker原生),redhat等windows/mac网络知识能力osi 七层/四层模型:了解每层的作用和存在的意义tcp/ip协议:理解拥塞窗口协商发送能力http协议:理解文本头的各字段意义二、框架能力(java方向)类库fastjson,httpclient,google guava等框架spring全家桶,重点:spring core(依赖注入DI,控制反转IOC,面向切换编程AOP)spring mvc (controller,service,dao/repository, model,web编程必备)spring cloud
3706浏览
8推荐
4评论
-
充分理解跨域问题并解决跨域问题
现在越来越多的项目就算是一个管理后端也偏向于使用前后端分离的部署方式去做,为了顺应时代的潮流,一前后端分离就产生了跨域问题,所以许多同学把跨域和前后端分离项目联系在了一起,其实跨域产生的原因并不是前后端分离导致的,那我们一起来看一下,希望可以靠这一篇文章解答大家所有的跨域问题 跨域产生的条件 使用xmlHttpRequest,即我们通常说的ajax请求 浏览器做了这个事 访问的域名不同,即访问的html页面是a域名下的,但内部js发送的ajax请求的目标地址却是b域名 以上三个条件缺一
4104浏览
12推荐
2评论
-
深入浅出的理解如何安全的传输你的密码
我们在做用户注册或登录模块时经常会遇到需要传输用户密码到服务端的问题,密码这类的信息在安全重要性上不言而喻,若在客户端,网络或服务端任何一个地方出问题被泄漏了密码则会产生严重的后果,就像下面一个简单的管理员登录的用户名和密码表单: 当我们打开chrome的network查看请求时 哇,我们的系统开天窗了,用户的所有请求在客户端浏览器上可以被正确的解析,我们的网络传输过程也可以被轻易的拦截,那我们的密码是否很不安全?那其实要解决这个问题也并不是很难,我们就来看一下如何安
6131浏览
45推荐
10评论
-
一文看懂微服务和常用的微服务落地技术
最近在我的秒杀深度优化课程中讲到分布式扩展的多种方法,其中有目前最火的微服务扩展及对应的落地技术,特地希望可以通过一篇文章讲清楚内容,带大家入门。 微服务的概念 首先我们尝试用一段话解释一下微服务的概念,微服务区别于讲所有的服务,数据库访问等业务及中间层代码打在一个jar或者war包内的all in one的体系结构,以业务服务及领域模型的组合为单元拆分出可独立部署,独立运行,独立风险控制的系统组件应用的结合体。微服务拥有业务服务(可以理解为spring mvc中的service)及领
10832浏览
42推荐
9评论
-
java面试--电商小白vs业内大厂
最近突然回想起几年前的一次上海业内电商大厂的java面试经历,虽然过了那么多年,从一位电商小白发展到自己也面试了无数java求职者,基本套路和方向在行业内依然没有发生根本性的改变,下面就通过我的一次面试经历的分享深度剖析给大家一名java技术人员的面试本质。 技术面试轮次论 首先其实各个公司的面试流程几乎是大同小异,分为多轮面试,许多初入职场的同学可能觉得多论面试无非就是多个人一起把把关,或者公司的hr要求面试流程使然,其实这些理解都太片面了,为什么需要技术面试多轮次,
11753浏览
77推荐
9评论
-
如何解决业务系统的热点问题
我们在做各种业务研发的时候经常会碰到热点问题影响系统稳定性和性能瓶颈,例如支付系统中的热点账户进出款,电商系统中的热点商品参与秒杀,金融系统中的热点理财产品抢购等,那今天就让我带大家来一起看下我们如何解决热点问题。 首先我们要搞清楚的是热点问题必须包含两个字,一个是热一个是点,点表示我们在系统的业务路径上有一个地方存在性能的瓶颈,比如数据库,文件系统,网络,甚至于内存等,这个点一般有io,锁等问题构成。热表示其被访问的频率很高,就是说一个被访问频率很高的io或
7075浏览
26推荐
0评论
-
从java电商小白到秒杀大咖
前言 刚从事java开发的同学很多时间会直接接触一些简单的ssm框架,使用spring mvc外加mybatis实现一个基本的web项目,打个war包部署上线。跟上时代潮流的会使用spring boot直接拉上内置tomcat jar包部署方式上手实现,但却忽略了要想从一名普通的码农程序员升级为一名架构师,对于电商或者其它稍微复杂一点的大型项目,在研发的过程中除了要搞定需求,更多的还需要以领域模型为前提的思维方式划分清楚业务模块,业务模型,并在操作的过程中注重扩展性,性能,流量承载,服务降级等策略业务分层 我们在做系统设计时需要遵从领域模型的分层设计思想,如下图 数据层处理数据库的数据模型,如同与数据库的映射,完全遵从数据库的结构字段。 业务层处理核心的领域模型,拥有对象的生命周期,例如一个电商的商品Ite
10114浏览
48推荐
10评论