awbeci网站之技术篇
之前写的一篇关于awbeci网站的使用和介绍,大家可以看看,地址在:http://www.cnblogs.com/zhangwei595806165/p/5245640.html

1、前台
BootStrap

选择bootstrap的原因是,最近两年bt实在是太火了,而且一些模板设计省了你再花费时间去设计css了,其实我还关注过foundation和semantic,因为一想到还要从新学习,还不如直接用bt了,至于前端的js框架当然选择jquery了,当然bt也是依赖于jquery的,不过最近我发现react也挺火的,有些react库也满足一些日常需求,如:http://ant.design/和http://react-components.com/,感觉还不错,所以我打算awbeci3.0使用react来设计页面UI,其实使用react我也感觉到使用jquery力不人心,有篇文章就讲过jquery和react的优缺点,你们可以看看:https://segmentfault.com/a/1190000003501752,从一张图中就可以看出react的优势,毕竟它是facebook创造的,已经应用在facebook和instagram上面了。大家可以试试,应该说,这也是前端框架发展的趋势吧,比如还有其它一些优秀的框架如:vue.js,angualarJS等等。

2、后台
SpringMVC、Spring、Mybatis

其实早在awbeci1.0的时候我使用的技术是struts、spring和hibernate,但是发现springmvc和mybatis在国内社区里面更火,原因我想可能是springmvc安全性和mybatis的轻量级和它的多表查询吧,之前不是12306网站出现struts网站漏洞吗,我想还是使用安全性更高的springmvc吧,其实我发现srpingmvc更优秀,尤其在处理一些json数据的时候,感觉更顺手,至于mybatis,当然是喜欢它的多表联合查询了,hibernate多表查询真是太可怕了,也不知道使用hibernate的程序员兄弟可感觉到了,而且在1对多的双向关联的时候转换成json出现死循环问题,也是我一个痛点,于是乎抛弃hibernate选用mybatis。
3、服务器
ECS、RDS、OSS、CDN
服务器我使用的是阿里云,相比aws我感觉阿里云更适合我吧,使用起来也更方便,而且时不时的都有优惠活动,我是从2014年开始使用的,刚开始只是买了ECS,然后在ECS上面安装mysql,但是我发现这样做降低了服务器的性能,于是我又买了台RDS,把awbeci网站的数据直接保存到RDS上面,更简单,但是网站做的过程中发现网站收集的时候会涉及到小图标,虽然刚开始非常小的文件,但是用户一多,收藏的网址越多,那么图片量就非常大了,以防万一我使用了OSS,一种静态资源服务,所有的图片我都保存到那上面,非常方便。当然,现在网站注册的用户非常小,但是当网站发展越来越大的时候,我也相信会发展越来越大的时候,到时候我还会买负载均衡的。
4、未来
php+react
虽然awbeci2.0是使用java来做的,但是我打算下一步使用php来做,至于为什么?引用社区里的一句名言:php是世界上最好的语言,没有之一!至于为什么使用react我上面也说了,它比jquery更优秀,所以awbeci3.0就会使用php和react了。最后,我想说的是,大家在使用awbeci的时候有什么建议和反馈可以跟我交流,交流群是:代码世界 464696550
awbeci网站之技术篇的更多相关文章
- awbeci—一个帮助你快速处理日常工作的网址收集网站
大家好,我是awbeci作者,awbeci网站是一个能够快速处理日常工作的网址收集网站,为什么这样说呢?下面我将为大家介绍这个网站的由来,以及设计它的初衷和如何使用以及对未来的展望和计划,以及bug反 ...
- 测试开发Python培训:抓取新浪微博抓取数据-技术篇
测试开发Python培训:抓取新浪微博抓取数据-技术篇 poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.在poptest的se ...
- 豆瓣上9分以上的IT书籍-编程技术篇
在豆瓣上9分以上的IT书籍-编程语言篇中,收集了很多优秀的编程语言书籍,也得到了不少读者的喜欢.不过也有一些读者留言说某某书为什么没有,一种是因为某些书并不算讲某种编程语言的,一种是由于豆瓣9分以上这 ...
- Python爬虫笔记技术篇
目录 前言 requests出现中文乱码 使用代理 BeautifulSoup的使用 Selenium的使用 基础使用 Selenium获取网页动态数据赋值给BeautifulSoup Seleniu ...
- 如何一步一步用DDD设计一个电商网站(九)—— 小心陷入值对象持久化的坑
阅读目录 前言 场景1的思考 场景2的思考 避坑方式 实践 结语 一.前言 在上一篇中(如何一步一步用DDD设计一个电商网站(八)—— 会员价的集成),有一行注释的代码: public interfa ...
- 如何一步一步用DDD设计一个电商网站(八)—— 会员价的集成
阅读目录 前言 建模 实现 结语 一.前言 前面几篇已经实现了一个基本的购买+售价计算的过程,这次再让售价丰满一些,增加一个会员价的概念.会员价在现在的主流电商中,是一个不大常见的模式,其带来的问题是 ...
- 如何一步一步用DDD设计一个电商网站(十)—— 一个完整的购物车
阅读目录 前言 回顾 梳理 实现 结语 一.前言 之前的文章中已经涉及到了购买商品加入购物车,购物车内购物项的金额计算等功能.本篇准备把剩下的购物车的基本概念一次处理完. 二.回顾 在动手之前我对之 ...
- 如何一步一步用DDD设计一个电商网站(一)—— 先理解核心概念
一.前言 DDD(领域驱动设计)的一些介绍网上资料很多,这里就不继续描述了.自己使用领域驱动设计摸滚打爬也有2年多的时间,出于对知识的总结和分享,也是对自我理解的一个公开检验,介于博客园这个平 ...
- 如何一步一步用DDD设计一个电商网站(七)—— 实现售价上下文
阅读目录 前言 明确业务细节 建模 实现 结语 一.前言 上一篇我们已经确立的购买上下文和销售上下文的交互方式,传送门在此:http://www.cnblogs.com/Zachary-Fan/p/D ...
随机推荐
- windows的磁盘操作之四——根据逻辑分区号获得物理磁盘号(转)
第一节中我们谈到了磁盘设备名称的两种形式: 对于物理驱动器x,形式为\\.\PhysicalDriveX,编号从0开始,例如 名称 含义 \\.\PhysicalDrive0 打开第一个物理驱动器 \ ...
- jquery 控制css样式
一.CSS 1.css(name) 访问第一个匹配元素的样式属性. 返回值 String 参数 name (String) : 要访问的属性名称 示例: $("p").css(&q ...
- 解剖android中的闹钟app 一
首先,看一看android市场上有哪些主流的闹钟app了,我们来进行一个简单的评测: 一.正点闹钟 这是一款源自金山技术的闹钟app,其主力创始团队都是来自于金山,其装机量,下载量都是排名第一.老样子 ...
- GDB 程序调试简单实践
用了好久的GCC/G++ 却一直都没用过GDB调试过程序,有时程序不是非常大,一般有错,直接看编译器编译结果就几乎相同知道错在哪儿了,或者使用codeblocks单步调试,甚至回到windows以下调 ...
- 97.5%准确率的深度学习中文分词(字嵌入+Bi-LSTM+CRF)
本文转载自:http://www.17bigdata.com/97-5%E5%87%86%E7%A1%AE%E7%8E%87%E7%9A%84%E6%B7%B1%E5%BA%A6%E5%AD%A6%E ...
- easyui权限系统改造备忘
修改list.js文件 //// 如果所有操作按钮隐藏,则list-toolbar隐藏 //if ($(".list-toolbar").length > 0) { // v ...
- c#:winform从一个toolstriptool上拖动一个图标到一个自定义usercontrol内。
效果: 在一个winform工程中,添加一个ToolStrip然后给它添加一个ToolStripButton(tsbStart,它就是红色框圈选的图标) this.toolStripTools = n ...
- GPUImage API文档之GPUImageFramebufferCache类
GPUImageFramebufferCache类负责管理GPUImageFramebuffer对象,是一个GPUImageFramebuffer对象的缓存. 方法 - (GPUImageFrameb ...
- .Net C# 5.0 规范:迭代器
本文内容 枚举器 enumerator 接口 - IEnumerator 可枚举 enumerable 接口 - IEnumerable 产生类型 yield type 枚举器 enumerator ...
- Android 事件模型
本文内容 基于监听的事件模型 基于回调的事件模型 Android 支持两种事件模型,基于监听的事件模型和基于回调的事件模型. 基于监听的事件模型 基于监听的事件模型是一种委托式的,更"面向对 ...