在线教育平台、网校搭建、远程教育平台搭建技术选型(268教育)
2013-10-16 22:22
357 查看
一直接触网校几年的时间。从技术开发到网校的运营感觉有自己的一套理解。
在线教育平台搭建技术是一方面,对如何运营,如何搭建适合很多公司他们自己的网校这个更重要。不需要多牛逼,需要最适合。
小广告:268教育(268xue):http://www.268xue.com我们专做网校搭建平台,别喷哈。
写在前面的牢骚话:
越来越多的线下机构将目光投向在线教育网校,因为线下发展已经到一个瓶颈,而且越来越多的学员需要在网上学习。
如果线下的培训机构不及时改变观念,将来打败自己的不是别人,是自己。
我以前的老东家做的非常好,线下每年2个亿的流水,趁线下的优势在,大投入迅速的推出网校。
网校跟线下既是竞争又是合作。
宁愿自己的网校把自己的线下吃掉,也不要让别人的网校把自己的线下打垮!
做一个产品方面贴近用户的需求。根据用户的要求二次定制.优势再扩大化.
做技术的我们从技术角度看一下。网站的架构是否能达到市面网校的要求。欢迎各种拍砖。
一、网站架构定位:
1.针对网校数据,数据量不会很大,用户一般年内达到10W的网校就赚大发了。。
1年内达到千万级别的数据量就算很大了。
2.针对大公司数据量可能膨胀,做好数据扩展的准备。
二、网站的基本考虑点,以及基本的技术选型
1)Web前端系统
页面的静态化以及图片的托管。
一说静态化,可能都用到模版引擎。freemarker velocity.
针对网校的系统,商品页面不是重点。准备用nginx转发。做伪静态。用vanish缓存。
同时针对网校很多页面靠大图片累加的。图片最好是走CDN的。看公司的财力是否用了。小公司直接走自己的带宽了。
2)负载均衡系统.
只能采用软件了。硬件伤不起,不是政府。选择nginx
3)数据库集群系统
数据库采用mysql.压力大时可以增加服务器从库的数量。做好读写分离。
1主多从,从库读取时随机读取,此实现方案一、在musql端做,给应用1个虚拟IP。
可惜这个是运维做的,不了解细节。方案二:代码端实现读写的分离:
实现原理:自己写拦截器。拦截所有service,根据service的name来决定是读库还是写库操作。拦截器的目的是覆盖
获取数据库的key方法,项目连接数据库只要key改变,就是所有的数据库改变了。
伪代码:
if(写操作)return 写库的key
if(读操作)return 读库的list中随机返回1个key.
注意:spring提供了可以覆盖获取数据库key的方法。ibtais.mybatis.hibernate.jdbctemplate都可以用的。目前项目中只用到
ibtais、mybatis、jdbctemplate的实现。都是一样的。hibernate工作了几年一直没机会用到。不会用~
4)缓存系统
喜欢memcache。不是大的项目。别人所说的一致性哈希也用不到。
缓存需要多台的话 可以设置多台。自己代码实现这个不麻烦应该。网上很多。
至于ibatis,mybatis自带的缓存,本人感觉不是很实用于web架构的。只有1个应用的项目到时挺适合的,用着也方便。
5)针对项目中计数器,微博回复,文章浏览数,好友,粉丝等的实现。
memcache+redis两者配合。
6)代码实际技术选型:
1.MVC Framwork: SpringMVC3.0
Restful的风格越来越风行,试试丢掉复杂的struts2.
2.Layout
:以前使用struts2时用tiles.配置太啰嗦了,SiteMesh2简洁方便,首选。
3.Javascript
Library:jquery。没什么其他说的。
4.Cache :memcached 客户端Spymemcached,自己加下重试机制。
5.Security
Framework: 业务不复杂Apache
Shiro,针对用户需要自定义的。自己编写拦截器对URL进行权限拦截
6.JMS:ActiveMQ
7.Json:GSon
8.数据库:mysql.NoSql:redis
在线教育平台搭建技术是一方面,对如何运营,如何搭建适合很多公司他们自己的网校这个更重要。不需要多牛逼,需要最适合。
小广告:268教育(268xue):http://www.268xue.com我们专做网校搭建平台,别喷哈。
写在前面的牢骚话:
越来越多的线下机构将目光投向在线教育网校,因为线下发展已经到一个瓶颈,而且越来越多的学员需要在网上学习。
如果线下的培训机构不及时改变观念,将来打败自己的不是别人,是自己。
我以前的老东家做的非常好,线下每年2个亿的流水,趁线下的优势在,大投入迅速的推出网校。
网校跟线下既是竞争又是合作。
宁愿自己的网校把自己的线下吃掉,也不要让别人的网校把自己的线下打垮!
做一个产品方面贴近用户的需求。根据用户的要求二次定制.优势再扩大化.
做技术的我们从技术角度看一下。网站的架构是否能达到市面网校的要求。欢迎各种拍砖。
一、网站架构定位:
1.针对网校数据,数据量不会很大,用户一般年内达到10W的网校就赚大发了。。
1年内达到千万级别的数据量就算很大了。
2.针对大公司数据量可能膨胀,做好数据扩展的准备。
二、网站的基本考虑点,以及基本的技术选型
1)Web前端系统
页面的静态化以及图片的托管。
一说静态化,可能都用到模版引擎。freemarker velocity.
针对网校的系统,商品页面不是重点。准备用nginx转发。做伪静态。用vanish缓存。
同时针对网校很多页面靠大图片累加的。图片最好是走CDN的。看公司的财力是否用了。小公司直接走自己的带宽了。
2)负载均衡系统.
只能采用软件了。硬件伤不起,不是政府。选择nginx
3)数据库集群系统
数据库采用mysql.压力大时可以增加服务器从库的数量。做好读写分离。
1主多从,从库读取时随机读取,此实现方案一、在musql端做,给应用1个虚拟IP。
可惜这个是运维做的,不了解细节。方案二:代码端实现读写的分离:
实现原理:自己写拦截器。拦截所有service,根据service的name来决定是读库还是写库操作。拦截器的目的是覆盖
获取数据库的key方法,项目连接数据库只要key改变,就是所有的数据库改变了。
伪代码:
if(写操作)return 写库的key
if(读操作)return 读库的list中随机返回1个key.
注意:spring提供了可以覆盖获取数据库key的方法。ibtais.mybatis.hibernate.jdbctemplate都可以用的。目前项目中只用到
ibtais、mybatis、jdbctemplate的实现。都是一样的。hibernate工作了几年一直没机会用到。不会用~
4)缓存系统
喜欢memcache。不是大的项目。别人所说的一致性哈希也用不到。
缓存需要多台的话 可以设置多台。自己代码实现这个不麻烦应该。网上很多。
至于ibatis,mybatis自带的缓存,本人感觉不是很实用于web架构的。只有1个应用的项目到时挺适合的,用着也方便。
5)针对项目中计数器,微博回复,文章浏览数,好友,粉丝等的实现。
memcache+redis两者配合。
6)代码实际技术选型:
1.MVC Framwork: SpringMVC3.0
Restful的风格越来越风行,试试丢掉复杂的struts2.
2.Layout
:以前使用struts2时用tiles.配置太啰嗦了,SiteMesh2简洁方便,首选。
3.Javascript
Library:jquery。没什么其他说的。
4.Cache :memcached 客户端Spymemcached,自己加下重试机制。
5.Security
Framework: 业务不复杂Apache
Shiro,针对用户需要自定义的。自己编写拦截器对URL进行权限拦截
6.JMS:ActiveMQ
7.Json:GSon
8.数据库:mysql.NoSql:redis
相关文章推荐
- 基于社区做在线教育:国内最大IT技术社区51CTO推出视频课程平台
- 基于社区做在线教育:国内最大IT技术社区51CTO推出视频课程平台
- 在线教育发展前景良好,网校系统搭建步伐加快
- 国内最大IT技术社区51CTO推出在线教育平台!
- 国内最大IT技术社区51CTO推出在线教育平台!
- 【阿里在线技术峰会】李金波:企业大数据平台仓库架构建设思路
- 第三百七十六节,Django+Xadmin打造上线标准的在线教育平台—创建用户操作app,在models.py文件生成5张表,用户咨询表、课程评论表、用户收藏表、用户消息表、用户学习表
- 基于IMOOC强力django+杀手级xadmin 打造上线标准的在线教育平台课程的学习(15)——xadmin的扩展
- 百度全资收购传课,在线教育平台怎么玩?
- 第三百九十六节,Django+Xadmin打造上线标准的在线教育平台—其他插件使用说,自定义列表页上传插件
- CNUTCon2017全球运维技术大会(持续更新中) - 斯达克学院 - 实战驱动的 IT 教育平台 - Powered By EduSoho
- 基于DotNet构件技术的企业级敏捷软件开发平台 - AgileEAS.NET - 发布ActiveXForm/SmartClient在线演示
- 技术分享:如何用Solr搭建大数据查询平台
- ElasticSearch实战 (一)技术选型和简单环境搭建
- 基于IMOOC强力django+杀手级xadmin 打造上线标准的在线教育平台课程的学习(10)——Operation models.py的设计
- 技术选型,开发环境,项目搭建【一】
- 基于IMOOC强力django+杀手级xadmin 打造上线标准的在线教育平台课程的学习(13)——xadmin介绍
- 基于IMOOC强力django+杀手级xadmin 打造上线标准的在线教育平台课程的学习(16)——首页和登录页面配置
- APP在线制作平台,终极技术哪家强?
- Django建教育平台(一)--搭建环境,新建项目