如何搭建一个web系统

如果要搭建一个 web系统,我们需要做哪些准备呢?有时候,也许我们会一头雾水不知如何下手。其实我们可以这么想,做任何事情之前我们都必须先弄清楚我们需要什么。 根据对web系统的分析,个人认为我们可以从如下几个方面考虑我们的需求: 页面访问,即信息查阅 表单重复提交
  • api接口
  • 权限
  • 通知(邮件,短信,站内信)
  • 日志
  • 数据库
  • 报表
  • 搜索
  • 服务器配置(反向代理,负载均衡)
这样以来我们针对以上需求,逐个攻击: 对于信息查阅,即html文件用浏览器打开,对于样式和特效则需要css和js的配合。当下流行的技术html5,saas,angularjs,jquery,bootstrap,react等等 api接口之所以单独提出来,是因为我们的API常常不只是为自己所用,还需为他人提供服务。在过去的一段时间内,我们使用web service作为一个API服务规范,然而其较笨重且效率并不高。当下我们采用rest API,即用json作为序列化方式 在这个信息时代,价值最高的莫过于数据。对于商业价值高的数据不考虑 权限是不行的。因此在我们的系统中引入权限设计就显得很有必要。对于权限我们需从三个方面考虑:
  • 访问权限
  • 操作权限
  • 数据权限
站点之所以需要 通知功能出于以下几方面考虑: 将用户之间的交互变动及时通知相关人士 将系统最新更新推送给用户,得以及时反馈 当前比较流行的推送方式则有邮件,短信,站内信以及第三方社交软件 每个系统都不可能不设计 日志,若不设计日志则可以视作自己玩自己,为什么呢?我们的日志可以分为两类: 应用日志
应用日志主要记录系统操作者的行为以便处理纠纷以及在必要时刻对于用户提供帮助
系统日志
系统日志则主要服务于我们开发人员,在生产环境无法通过debug模式追踪问题,我们只能合理的将每一个时间段的日志打印在文本文件进行管理或存储在db中(日志管理系统)
关于 数据库的选用,则是根据我们业务的情况来决定是选择关系型数据库还是nosql。目前主流关系型数据库有sqlserver,oracle,MySQL,db2。nosql则以mongodb为主。另外也有一些微型数据库,如sqllite。 报表对于网站显得非常重要,通过报表可以一目了然的看出用户行为趋势,商业销售情况并及时做出正确的决策。 大多数系统都会有 搜索功能,通过搜索关键字可以查出相关信息,免除一步步的翻页。搜索有以下两种:
  1. 数据库模糊搜索
  2. 搜索引擎全文检索
选用数据库自有的模糊搜索可以满足数据量小的系统,对于数据量大的则可使用搜索引擎,目前可选用的主流搜索引擎有sorl,elasticsearch。其实核心都是Lucen,根据个人熟悉程度来选择吧。 最后说说系统 部署相关的。以往我们将系统部署在物理机上,常常会感觉很浪费而且准备环境过程复杂造成需要更多时间花在部署事项上的后果。此处我们可选用docker容器,作为容器就显得特别灵活了,我们将需要部署的系统提前打成容器压缩包直接扔在服务器上便可访问。

转载于:https://my.oschina.net/crazyharry/blog/1105179

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值