基于阿里云的系统框架展望

1) CDN

用于缓存静态文件等等。七牛和阿里的都还可以。

  • 七牛要做的久一点,各种图片处理的接口要完善一些
  • 阿里的CDN要稍微好一点点,但是没有不安全的访问方式,访问稍微没有那么灵活。图片处理功能弱一点。

2) 负载均衡

可以自己搭建也可以用阿里云的负载均衡服务。自己搭建推荐Nginx。

3) 分布式调用框架

目前可选的有zookeeper+dubbo、zookeeper+Motan、zookeeper+dubbox、Edas。

  • dubbo, 阿里的服务治理框架,已经不维护了,但很流行,大量的解决方案可以借鉴,推荐
  • dubboX, 当当基于dubbo搞的,还在维护可以一用,推荐
  • Motan,微博的服务治理框架,2016年5月开源,与同类型的Dubbo相比,Motan 在功能方面并没有那么全面,也没有实现特别多的扩展,但Motan是一个小而精的 RPC 框架,它的特点是简单、易用,是一个轻量级 RPC框架。相对来说,用的人比较少。功能和稳定性有待观望。对跨语言调用支持较差,主要支持java。
  • Spring Cloud 完全基于 Spring Boot,是一个非常新的项目,2016年才 1.0 release。版本提升非常迅速,发展势头良好。但是很少见到国内业界有人在生产上成套使用,一般都是只有其中一两个组件。很年轻的项目,可以关注,前景看好。
  • Edas, 阿里云服务,要收钱,侵入型很强,不推荐

4)MQ

可选的有:ActiveMQ, 阿里云消息,RabbitMQ。

各有好处,但是考虑到运维的难度,推荐阿里云消息。

5)Redis

用来做缓存,自建成本有点高,需要Codis, 分片,集群,主从等等,比较麻烦。可自建也可直接用阿里的。

6)数据库

主要基于读写分离和主从复制考虑,目前可以自建和选用阿里的DRDS。

  • 自建,不用中间件,直接1写2只读, 然后配置读写分离的数据源即可。如果并发量大进一步集群可以才用数据库中间件,比如Mycat。
  • 使用使用阿里的DRDS,是一个中间件服务,基于阿里的TDDL。DRDS实例需要与RDS配合使用,两者都需要单独购买

7)搜索

--自建采用solr或Elastic Search

Solr适合对已有数据进行搜索,Elastic Search适合实时搜索。Elastic Search通常和Logstash、Kibana组成ELK实时日志分析平台。

8)典型业务场景说明

把业务底层做成SOA模块,通过分布式调用框架对外提供服务。

单独做一个小的系统来运行定时任务

热点数据放缓存,然后通过MQ来更新缓存

日志等数据有必要可以考虑上个MongoDB

--------------------------------------------------------------------
PS: 欢迎关注公众号"Devin说",会不定期更新Java相关技术知识。
--------------------------------------------------------------------

基于阿里云的JavaEE系统框架介绍的更多相关文章

  1. 基于阿里云服务器Linux系统部署JavaWeb项目

    前段时间刚完成一个JavaWeb项目,想着怎么部署到服务器上,边学边做,花了点时间终于成功部署了,这里总结记录一下过程中所遇到的问题及解决方法.之所以选择阿里云,考虑到它是使用用户最多也是最广泛的云服 ...

  2. 阿里云 OCS SDK for NodeJS介绍

    阿里云 OCS SDK for NodeJS介绍 阿里云技术团队:熊亮 阿里云 SDK for NodeJS 是为 NodeJS 开发者提供使用阿里云各项服务的统一入口,由阿里云UED团队负责开发维护 ...

  3. 一·创建Linux服务器(基于阿里云)

    本系统是基于阿里云服务器,购买请前往https://www.aliyun.com/?spm=5176.8142029.388261.1.taXish ,由于经济能力的限制,本人购买的是最低配置如下 其 ...

  4. 基于阿里云server搭建SVNserver

    基于阿里云server搭建SVNserver 本系列文章由ex_net(张建波)编写,转载请注明出处. http://blog.csdn.net/ex_net/article/details/8577 ...

  5. Gerrit系统框架介绍

    Gerrit目录介绍 转自:https://blog.csdn.net/tanshizhen119/article/details/79889242 先上图 bin/ : 主要是放gerrit.sh启 ...

  6. 构建基于阿里云OSS文件上传服务

    转载请注明来源:http://blog.csdn.net/loongshawn/article/details/50710132 <构建基于阿里云OSS文件上传服务> <构建基于OS ...

  7. 阿里云短信验证_基于阿里云OpenAPI实现

    阿里云短信服务 背景简介: 短信验证以及短信通知,目前已经应用的非常广泛,最近因项目需要,需要将原来的短信接口换成阿里云的的短信服务,原项目集成的短信服务能够实现短信的发送以及短信的验证整个过程,简单 ...

  8. go程序基于阿里云CodePipeline的一次devops实践

    背景 最近朋友有个项目代码托管用的码云,测试服务器(阿里云ECS)只有一台,三四个人开发,于是想基于阿里云的CodePipeline快速打造一套自动化cicd的流程,使用docker来进行多套环境部署 ...

  9. 基于阿里云容器服务用docker容器运行ASP.NET 5示例程序

    小试阿里云容器服务 之后,接下来有一个挡不住的小试冲动--用docker容器运行程序.首先想到的程序是 ASP.NET 5示例程序,于是参考msdn博客中的这篇博文 Running ASP.NET 5 ...

随机推荐

  1. Hibernate学习(三)自动建表

    一般情况下有如下两种方法: 1.在配置文件中添加如下配置 <property name="hibernate.hbm2ddl.auto">create</prop ...

  2. Coursera课程 Programming Languages, Part A 总结

    Coursera CSE341: Programming Languages 感谢华盛顿大学 Dan Grossman 老师 以及 Coursera . 碎言碎语 这只是 Programming La ...

  3. memcached subList序列化问题

    某个业务场景需要将list超过10个元素时截取前10个然后再丢memcached缓存,因此写了这么一行代码 if(list.size()>10){ list=list.subList(0, 10 ...

  4. Android Studio怎样选择查看指定进程的log?

    今天说一个简单的东东,关于Android Studio在logcat中怎样查看指定进程的log. 关于过滤你自己所开发的应用的log.在这篇文章中:Android Studio怎样给log加入过滤项( ...

  5. Cocos2d-X使用CCAnimation创建动画

    动画在游戏中是很常见的 程序1:创建一个简单的动画 首先须要在project文件夹下的Resource文件夹中放一张有各种不同动作的图片 在程序中加入以下的代码 #include "Anim ...

  6. Unity游戏中使用贝塞尔曲线

    孙广东   2015.8.15 比方在3D rpg游戏中.我们想设置弹道,不同的轨迹类型! 目的:这篇文章的主要目的是要给你关于在游戏怎样使用贝塞尔曲线的基本想法. 贝塞尔曲线是最主要的曲线,一般用在 ...

  7. UI - Cocoa Touch框架

    Cocoa Touch 层 Cocoa Touch层包括创建 iOS应用程序所需的关键框架. 上至实现应用程序可视界面,下至与高级系统服务交互.都须要该层技术提供底层基础.在开发应用程序的时候.请尽可 ...

  8. 25个增强iOS应用程序性能的提示和技巧(0基础篇)

    在开发iOS应用程序时,让程序具有良好的性能是非常关键的. 这也是用户所期望的,假设你的程序执行迟钝或缓慢,会招致用户的差评.然而因为iOS设备的局限性,有时候要想获得良好的性能,是非常困难的. 在开 ...

  9. POST/有道翻译 有bug

    1.发现在翻译时地址没有变,那是POST请求. 2.通过fidder抓包工具抓取url 3.对data分析,发现每次salt和sign都在变化. 4.查看源码,先用站长工具http://tool.ch ...

  10. 体验mssql-cli

    1. 背景 安装SQL Server on Linux之后,在命令行下使用sqlcmd,你会发现代码提示,语法高亮,甚至连多行复制都不支持,相比之下,MySQL的命令行客户端还好用多了.只做简单的命令 ...