巴别塔合约终端开发日记1-----技术选择
巴别塔合约终端开发日记1-----技术选择
需求
拿到开发任务之后,组里给出的开发时间差不多两个月左右。由于开发人员只有我自己一个人,开发时间还是比较紧张的。在开头的时候很重要,避免频繁修改代码才能尽可能减少开发时间。
项目大概分为以下几个部分
1. 核心前台展示: 合约相关的功能。包括tag点选,审核提交,当期任务查看。
2. 用户模块: 登录注册 ,信息展示 , 邮箱绑定 , B站uid绑定。
3. 管理模块:平台数据管理
4. 兑换商店:代币,奖品,抽奖等。
合约相关的功能是一个交互的过程,前端工作量也不会太小。后端部分要处理常见的并发访问的问题。并且商店部分的数据正确性很关键。前端在巴约#2的时候已经实现过了(做了有一个月),开发压力会小一点,但是当时没有与后端交互的需求,还有后端需要调试很多东西。
技术选择
前端部分不能浪费太多时间,Vue+ElementUI完全可以满足开发需求,具体手机端的适配方面,没有太多经验(毕竟自己不是搞前端的)。决定以流式布局,尽可能同时适应手机展示,减少开发时间。
后端部分拿SpringBoot,整合MyBatisPlus。plus确实比MyBatis好用不少。数据库选择自己用的比较多的MySQL。微服务时间不是很充裕,所以没有选择SpringCloud。
服务器配置只有2核2G 5MBPS带宽。访问量预估在500-1000左右,硬件环境注定要组件分服务器部署。对于MySQL部分效率的担忧,选择了Redis做缓存。
由于存在涉及奖励的操作,代币什么的涉及用户和合作方的利益,日志部分是需要存的,全在MySQL上也不合适。再使用MongoDB配合。
没有什么依赖消息队列的功能,不用消息队列了。
大框架就这些。还有辅助的东西就不一一列举了,像JWT,Redisson之类的在做功能的时候会说。
总结: SpringBoot MyBatisPlus Redis MongoDB Vue
巴别塔合约终端开发日记1-----技术选择相关推荐
- 巴别塔合约作战终端开发日记3——服务器负载优化
对于性能优化方面,首先服务器硬件配置还有2核2G内存5MBPS带宽.从硬件上来说其实并不支持太多的访问量,即便是加了Redis作为高速缓存,效率也堪忧.需求方面存在一条:活动会在定时开放,并且为了竞技 ...
- 巴别塔合约作战终端开发日记4——后端效率优化
注册优化 注册功能存在很严峻的短时间访问压力,并且这个功能会直接影响用户体验(我连账号都注册不了何谈后续呢?).为了防止这个问题的发生,一共经历了三个阶段的修改: 第一版:写锁+数据库判重+直接数据库 ...
- 巴别塔合约作战终端开发日记2——Linux系统部署项目
1. 安装XShell和Xftp 其中Xshell用于输入Linux命令,Xftp可以方便地进行文件传输. 2. 连接服务器 之后输入用户名密码保存指纹秘钥就可以正常使用了. 服务器就是一台Linux ...
- 【开发日记】Deep Speaker 开发日记之Triplet选择
在Deep Speaker中,Triplet三元组的选择是很重要的.如果随机选择,会使收敛速度变慢,如果使用"hard-negative",会得到次优的结果,也就是说ap和an的相 ...
- 移动应用开发技术选择六要素
文 / 李亮 作者从平台环境.操作系统.设备能力.云端.应用类型.跨平台开发六大方面分享了其在移动应用开发中的技术选择经验. 这是一个新的时代.新的机会.自从2007 年1月乔布斯揭开iPhone的面 ...
- CoreCRM 开发实录——开始之新项目的技术选择
2016年11月,接受了一个工作,是对"悟空CRM"进行一些修补.这是一个不错的 CRM,开源,并提供一个 SaaS 的服务.正好微软的 .NET Core 和 ASP.NET C ...
- 转载:如何开发高性能低成本的网站之技术选择
如何开发高性能低成本的网站之技术选择 每个企业都是慢慢发展起来的,在起步阶段成本是一个不得不考虑的重大问题 .直接入正题: 前台框架: ASP.NET MVC + Jquery + Json + F ...
- 技术沙龙|解读以太坊黄皮书,学习智能合约应用开发(北京)
2019独角兽企业重金招聘Python工程师标准>>> 前几天HiBlock区块链社区的杨镇老师在一次访谈中再次聊到了区块链技术学习和应用的话题,杨镇老师的观点很明确,技术学习要回归 ...
- 写好测试,提升应用质量。涨薪分分钟!!!(二)之单元测试下开发模式、技术框架选择
目录: 四. 单元测试下开发模式.技术框架选择 单元测试是按照测试范围来划分的.TDD.BDD 是按照开发模式来划分的.因此就有各种排列组合,这里我们只关心单元测试下的 TDD.BDD 方案. 在单元 ...
最新文章
- FFmpeg中AVDictionary介绍
- 流水账之都市:我是一个客居者
- 超详细 Nginx 极简教程,傻瓜一看也会!
- [转]Windows Shell 编程 第十一章 【来源:http://blog.csdn.net/wangqiulin123456/article/details/7987992】...
- Android2.3.7源码结构分析
- 解决烧录问题:Jlink的三线制SWD方式连接STM32芯片无法识别的解决方案
- 反思快速完成功能代码
- 两个列表合并去重_数据结构——列表
- Java虚拟机------JVM分析工具
- 泡腾片的打开方式:刀割封条,拔下盖子
- 自定义广播增加权限控制
- python求解简单加密问题,实现对输入的密文加密
- oracle数据库sqlloader,Oracle 的SQL*LOADER
- 嵌入式软件设计中的哲学思想
- MATLAB打开.m文件乱码解决办法
- 对称数 一个整数,它的各位数字如果是左右对称的,则称这个数是对称数。例如:1234321、123321等。
- 获取最新中国行政区划
- 企业微信机器人脚本python_Python实现企业微信机器人每天定时发消息实例
- 安卓html调色器,5个超棒的在线配色神器
- 解决open()不能打开带中文的文件路径