位置—— 跑跑卡丁车公司(钦州北路1066号73号楼)钦州路虹漕路站
职位——高级
面试主要语言——Net
工作方向——网站(社区面向全球玩家的)
性质——
花费时间——3.5小时
面试人数——2人(技 管)
前台——1楼 2楼 都是男的(BT )
环境——2楼面试场所 看起来有点像幼儿园
待遇——好
总结评价:
试卷3张。技术方面提问很细,和试卷进行核对,数据库方面对并发量有要求。数据量1000w以上。项目架构组成 分层 集群处理 错误处理 json处理 静态页处理 handler处理 同步 wcf 消息队列 资源压缩 js 等等。
性能为第一追求。毫秒。
前端 浏览器一个页面最多能同时提交多少http请求。 和新浪微博、谷歌相关的一些技术,按需加载技术 滚动条滚动到哪里读取到哪里,js后台分段向后台请求数据。静态资源压缩和图片压缩,减少网络宽带流量。减少使用js。
http请求几种 区别。
页面组装。使用handler处理所有请求,尽量不让page模型介入,自己写json生成格式数据. 页面防止刷新等常用功能 验证规则 写成类然后 继承。DAL层 所有返回结果为强类型 全部使用存储过程 。
错误处理引擎消息队列
集群中节点的程序 数据库 同步 分发管理
数据同步:在一个数据库操作(增删改)会对所有节点的数据库进行同一操作,所以会有一个任务分配协调器(方法/类/其它)来协调。发生错误时(或者节点),把相关的节点提交给 错误处理引擎消息队列 来处理,传递应该是把对象序列化(参数)和方法提交过去。然后可以异步执行。所以实时和异步都可以有合适的方式完成。
分布式事务由于使用了WCF 所以由Net框架来完成 使用了DTC
常用存储过程的自动生成
备份 数据库镜像 同步
千万级数据查询优化
NO SQL
缓存 使用了分布式内存数据库Memcached, asp.net 自带的cache,http缓存标识2种(过期).
设计模式 适配器 装饰者
等等
技术主管态度认真,深入细节,钻研很专(偏性能 代码).欠缺一些大局观(可能公司有人专门做架构) 如:AOP IOC未提问 Emit LINQ 原理表达式树 设计原则相关 等 。
存在问题 如:
1.手工写json,服务器端手写和脚本端手写 。因为第三方模块有的光用,未进行分析解析其原因,所以不满意其性能。就自己造轮子
2.handler处理请求问题,如果请求很多那么导致的结果是就handler很多(要组织管理的话时能文件夹形式)项目中已经使用到了WCF,为何不能用其来进行组织管理 ?MVC可以使用action管理
优点:工资较高 有考核奖励 年底待遇较优
缺点:面试过程中将近3.5小时时间 9:40-13:00,经过2人面试 无茶水(茶水为面试基本常识)。
管理的经理年轻(可能名牌大学出来2年左右) 面试起始,身体后仰 侧歪,右胳膊搭椅背上 翘腿 斜视 ,提问认为对的东西,回答Y/N。整体感觉缺乏人性化和基本尊重。