单机版够用适当了解些分布式。

别单纯看单机版的框架,适当了解些分布式,此外,在描述项目里框架技术时,最好你再带些分布式的技术,下面我列些大家可以准备的分布式技术。

1,反向代理方面,nginx的基本配置,比如如何通过lua语言设置规则,如何设置session粘滞,如果可以,再看些nginx的底层,比如协议,集群设置,失效转移等。

2,远程调用dubbo方面,可以看下dubbo和zookeeper整合的知识点,再深一步,了解下dubbo底层的传输协议和序列化方式。

3,消息队列方面,可以看下kafka或任意一种组件的使用方式,简单点可以看下配置,工作组的设置,再深入点,可以看下Kafka集群,持久化的方式,以及发送消息是用长连接还是短拦截。

以上仅仅是用3个组件举例,大家还可以看下Redis缓存,日志框架,MyCAT分库分表等,准备的方式有两大类,第一是要会说怎么用,这比较简单,能通过配置文件搭建成一个功能模块即可,第二是可以适当读些底层代码,以此了解下协议,集群和失效转移之类的高级知识点。

如果能在面试中侃侃而谈分布式组件的底层,那么得到的评价就会比较好了,比如“深入了解框架底层”,或“框架经验丰富”,这样就算去面试架构师也行了,更何况是高级开发。

别就知道增删改查,得了解性能优化。

数据库方面,别就知道增删改查,得了解性能优化,在实际项目里,大多数程序员用到的可能仅仅是增删改查,当我们用Mybatis时,这个情况更普遍,不过如果你面试时也这样表现,估计你的能力就和其它竞争者差不多了。

这方面,你可以准备如下的技能:。

1,SQL高级方面,比如groupby,having,左连接,子查询(带in),行转列等高级用法。

2,建表方面,你可以考虑下,你项目是用三范式还是反范式,理由是什么。

3,尤其是优化,你可以准备下如何通过执行计划查看SQL语句改进点的方式,或者其它能改善SQL性能的方式(比如建索引等)。

4,如果你感觉有能力,还可以准备些MySQL集群,MyCAT分库分表的技能,比如通过LVS+Keepalived实现MySQL负载均衡,MyCAT的配置方式,同样,如果可以,也看些相关的底层代码。

哪怕你在前三点表现一般,那么至少也能超越将近一般的候选人,尤其当你在SQL优化方面表现非常好,那么你在面试高级开发时,数据库层面一定是达标的,如果你连第四点也回答非常好,那么恭喜你,你在数据库方面的能力甚至达到了初级架构的级别。

get和post请求的区别。

1,get请求用来从服务器上获得资源,而post是用来向服务器提交数据。

2,get将表单中数据按照name=value的形式,添加到action所指向的URL后面,并且两者使用""连接,而各个变量之间使用"&"连接,post是将表单中的数据放在HTTP协议的请求头或消息体中,传递到action所指向URL。

3,get传输的数据要受到URL长度限制(1024字节即256个字符),而post可以传输大量的数据,上传文件通常要使用post方式。

4,使用get时参数会显示在地址栏上,如果这些数据不是敏感数据,那么可以使用get,对于敏感数据还是应用使用post。

5,get使用MIME类型application/x-www-form-urlencoded的URL编码(也叫百分号编码)文本的格式传递参数,保证被传送的参数由遵循规范的文本组成,例如一个空格的编码是"%20"。

补充:GET方式提交表单的典型应用是搜索引擎,GET方式就是被设计为查询用的。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。