可以说是幸运的一年,这一年弥补了之前缺失的技术和框架理解,对后端框架有了更全面的认知。
这家公司工作氛围很不错,老板是个爱钻研新技术的技术狂,手下个个都是能独当一面的工程师,我刚进来有种土鳖进城的感觉。可是老板面试我的时候,没问太多技术问题,我当时还在想这家公司会不会很烂,结果证实我的选择是正确的。
说起项目,一开始就三个人,一个架构师,一个项目经理,还有我这个辅助。看得出并不是主要的角色。
我们做的是取号叫号系统,整个流程大部分是结构师完成。我负责管理后台,配置取号叫号事项和取号规则的分配。
咋一看是个简单的系统,其难点就在于叫号并发的处理(当然我们用锁机制轻松搞定)、取号速度(用Redis存缓存)的问题。
我们用到的技术和架构都比较复杂。首先管理后台配置的数据要加载到Redis,取号叫号记录在Redis也要保存5天以后的数据,不保存多天是因为Redis会耗内存。其次,由其他接口同步的停车数据、取号叫号预约记录、车辆进场记录、事项从其他系统同步的记录都会用数据仓库Elasticsearch保存下来,当做以后日志查询,要注意的是Elasticsearch版本 1.X 2.X 5.X 差距非常大,代码的写法和包的引用差别都很大。还有用到消息队列ActiveMQ+并发处理akka来保证Elasticsearch写入不会遗漏。并且取号工程用nginx做负载。
值得一提的是,我们有多端预约机制,用了cxf webservice来提供服务,微信端和网页端预约前后端分离。log4j也是个好用的日志框架,帮助我们快速定位错误。听说log4j2效率比log4j高10倍,但是鉴于项目时间考虑,就没换成log4j2了。
项目还涉及调用评价器、调用LED显示器、取号机框体的硬件接口调用。
5月,架构师和经理都走了,就剩下我孤军奋战。还好当时我对这些框架已经了解的差不多了,大部分问题还是能应付。最近又搞了次迁移,ES用自带集群机制、ActiveMQ用了zookeeper做集群,Redis用了它自带的主从机制做集群,集群台数都要用奇数。启动了ES 5.X的新特新 ELK框架做日志分析。
相关推荐
DL/T 698.45-2017 电能信息采集与管理系统通信协议 DL/T 698.45-2017 电能信息采集与管理系统通信协议是中华人民共和国电力行业标准之一,该标准指定了电能信息采集与管理系统的通信协议。该协议用于实现电能信息的...
NXP官网的IMX6ULL U-BOOT,版本:2016.03-2.1.0,可移值到正点原子开发板,百问网开发板等
GAT__1400.1-2017公安视频图像信息应用系统__第1部分:通用技术要求 GAT__1400.2-2017公安视频图像信息应用系统__第2部分:应用平台技术要求.pdf GAT__1400.3-2017公安视频图像信息应用系统__第3部分:数据库技术...
HG 20636.2-2017 自控专业与其他专业的设计条件和分工.pdf
该版本是4.9,谨慎下载,gcc-linaro-4.9-2016.02-x86_64_arm-linux-gnueabihf.tar.xz
Q GDW 11709.2-2017 电动汽车充电计费控制单元第2部分
gcc-linaro-6.3.1-2017.05-x86_64_arm-linux-gnueabihf.tar.xz是由 Linaro 公司基于GCC推出的的ARM交叉编译工具。可用于交叉编译32-bit Armv7 Cortex-A, hard-float, little-endian目标中的裸机程序、u-boot、Linux ...
802.11-2016.pdf Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications
标题中的"gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux-gnu.tar.gz"是一个GCC(GNU Compiler Collection)的特定版本,由Linaro组织提供。这个压缩包是为64位AArch64架构的Linux系统编译和优化的GCC工具链。...
《GB 18352.6-2016 轻型车污染物排放限值及检测方法(中国第六阶段)》是中国针对轻型汽车排放标准的重要法规,旨在控制和减少机动车对环境的污染。该标准是国家环境保护部与国家质量监督检验检疫总局联合发布的,对...
gcc-linaro-5.5.0-2017.10-x86_64_aarch64-linux-gnu.tar.xz
gcc-linaro-7.4.1-2019.02-x86_64_arm-linux-gnueabihf是由 Linaro 公司基于GCC推出的的ARM交叉编译工具。...gcc-linaro-6.2.1-2016.11-x86_64_arm-linux-gnueabihf交叉编译器必须安装在64为主机上,才能编译目标代码。
符号库使用要求: 1、正确安装 AutoCAD2008(其它版本CAD也是一样的)。 2、正确安装 南方CASS9.1。 3、用 Blocks、System两个文件夹,替换掉CASS安装目录下的这两个文件夹,重新启动CASS。 ... 例如:C:\Program ...
Q GDW 11709.3-2017 电动汽车充电计费控制单元第3部分
olap4j-0.9.7.309-JS-3.jar maven中央仓库下载不到 下载之后再maven的bin目录下使用mvn命令:mvn install:install-file -Dfile=F:\apache-maven-3.5.3\mylib\olap4j-0.9.7.309-JS-3.jar -DgroupId=org.olap4j -...
标题中的“gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabi.tar.xz.7z”是一个软件编译工具包,由Linaro组织提供,用于在x86_64架构的Linux系统上构建针对ARM Linux设备的应用程序。Linaro是一个开源组织,专注...
1. Towards 6G:IEEE 802.11-2020 是向 6G 技术的重要一步,将来可能会与 6G 技术结合,实现更高速、更可靠的无线通信。 2. Edge Computing:IEEE 802.11-2020 可以与 Edge Computing 技术结合,实现智能边缘计算和...
包内文件: fuse-2.7.4-8_12.el5.i386.rpm fuse-kmdl-2.6.18-274.18.1.el5-2.7.4-8_12.el5.i686.rpm fuse-libs-2.7.4-8_12.el5.i386.rpm fuse-ntfs-3g-2013.1.13-2.el5.rf.i386.rpm ...fuse-2.7.4-8_12.el5.x86_64...
Kylin V10内核包 kernel-4.19.90-23.45.v2101.ky10.x86_64.rpm
Kettle (aka Pentaho’s Data Integration) , 一个java写的开源免费etl工具,支持各种数据源,文件格式,开箱即用。 共5个(part1/2/3/4/5)分包,全部下载后用命令 “copy /b pdi-ce-8.3.0.0-371.zip.rm1+pdi-ce-...