互联网后端开发工程师,技术经理,项目经理,架构师
文档!文档!文档!重要的事情说三遍 1、项目一期基本开发完毕,包括后台管理系统以及提供给手机端的接口,由于奔着敏捷开发去的,文档没有过多花时间去写, 当然了文档肯定有,开发人员写的自己能看懂,但是对于对接人员来说看了就跟吃了屎一样难受 好吧,由于项目进度比原先提前,所以根据实际情况来修改文档,...
1、拆分消息队列 原本在登录注册的时候需要使用到短信发送,这个需要使用到消息队列,当时只放入在项目中 现在的新需求在各个环节都有不同的消息推送,短息服务,以及日志保存,这些索性单独拎出来作为一个服务提供 (消息队列采用RabbitMQ,各位看管有兴趣可以参考之前发的文章,另外MQ也...
以前在单项目中用过RabbitMQ,没有问题 不过这次在分布式项目中使用RabbitMQ中有点搞糊涂了,但是实际上是没有问题的,思路清晰就行 简单看一下实际操作的示例吧: 资源文件中需要配置基本的rabbitMQ的属性,如下: 1 #rabbitmq config 2 rabbitmq.
1、搭建定时任务quartz 本来是打算把定时任务放入后台管理中,这样目前没问题,但是弱后期加入权限管理-shiro,那么肯定有冲突的,原因是最新版的shiro会使用quartz-1.6版本,而最新的quartz已经到了2.
研发工作已经步入正轨 1、订单流程的设计,本周全体过了一遍订单流程,针对一些细节具体讨论,另外对于复杂的顶级权限账号详细细分,权限细分化 设计数据库模型,生成数据库表 2、coding,代码还是需要编写的,没什么好说的,就是正对业务的一些增删改查,具体的技术点会在非日志类写明 3、rev...
之前说了权限认证,其实也就是登录验证身份 这次来说说shiro的授权 shiro可以针对角色授权,或者访问资源授权 两者都行,但是在如今的复杂系统中,当然使用后者,如果你是小系统或者私活的话,前者即可,甚至可以不用,我懂的 好吧,上代码: 首先新建一个ini,登陆信息以及权限配置好 ...
- -|||... 这周上了七天班啊有木有 1、团队组建完毕,虽然不是一个很庞大的团队,但是有人能做事,每天充分利用好8个小时,彼此互相帮助就可以作为一个强大的团队来支撑公司 团队并不需要那些每天上下班打个卡,有任务就做,没任务就上网的那种,这样的员工见多了,曾经我待过一家所谓的大公司,在...
作为普通老百姓,相信身边大家都不是老板,都不是土豪,都不是有钱人,我们平平凡凡,普普通通地工作,生活,养家 朋友圈是个至高无上的地方, 有的人做微商,大家反感,就屏蔽了 有的人做吃的,大家反感,就屏蔽了 有的人做代购,大家反感,就屏蔽了 我从来没有屏蔽过任何人任何事,各有所需,朋友圈...
都说我们要做模块化设计,而不要做功能化设计 什么是模块化设计,就是可插拔性高,组件化,想要就用,不要用拉倒,直接删除就行 什么是功能化设计,就是一个简单的功能,实现想要的效果,但是不够通用化,别人要用的话需要读懂你的代码,还需要复制黏贴很多代码这样效率不高 今天写了一个省市区三级联动的模...
上篇文章中是使用的默认realm来实现的简单登录,这仅仅只是个demo,真正项目中使用肯定是需要连接数据库的 首先创建自定义realm文件,如下: 在shiro中注入自定义realm的完全限定类名: 1 [main] 2 # your custom realm path 3 fooRealm=com.
1、订单流程重新设计流程,数据库表设计在原有基础上进行相应的改动 2、企业类型增加车队概念 3、重新修改sso单点登录,原型支持一个用户可登录多个客户端,目前只能同时登录一个客户端; 修改相应的拦截器 4、图片/文件上传通用组建,支持web端异步上传,以及手机端上传图片 5、数据库模型...
前面的帖子简单的介绍了基本的权限控制,可以说任何一个后台管理系统都是需要权限的 今天开始咱们来讲讲Shiro 首先引入基本的jar包 1 2 3 org.
什么是权限管理 一般来说,只要有用户参与的系统,那么都要有权限管理,尤其是一些后台的管理系统, 权限管理可以实现对用户访问系统的控制,按照安全规则或者相关策略的控制,可以使用户访问到只属于自己被授权的相关(比如菜单,或者页面资源) 权限管理包括用户认证和授权两模块 用户认证 用户认证,说白了就是登录的时候进行的验证,验证用户身份合法性。
web权限设计,做权限目前有三种主流实现方式 第一种:手动实现 配置2个拦截器,一个是拦截是否登陆,一个是拦截url的权限,通过角色权限表的配置,把权限url的路径与访问资源的url进行匹配 第二种:spring-security实现,比较重,不推荐 第三章:shiro,目前spring...
上周的产品基本定型,唯独订单部分还是有待讨论,其余部分可以开展,由于一期版本是给app提供服务 所以本周工作主要是: 1、根据产品原型设计数据库,审核并定稿形成第一版数据库设计: er-studio数据库设计、表设计 mysql navicat 1.
目前比较流行的验证做法:前端jquery-form-validate + 后端hibernate-validate 在pom中添加相关jar: org.
由于在服务器上有太多的软件 不可能每次启动都要重新启动服务吧(每晚断电。。。必须重启电脑) vim /etc/rc.d/rc.local 添加下列脚本 1 /usr/bin/fdfs_trackerd /etc/fdfs/tracker.
正式启动项目后的第一周 这一周有三天是在研讨会中进行的,各种需求讨论。。。至少 最终版还是确定了,不会再改核心 1、搭建基本项目框架 maven聚合工程 - 后台管理系统 restful接口服务 SSO单点登录 ...
修改redis.conf,打开后台运行选项: # By default Redis does not run as a daemon. Use 'yes' if you need it. # Note that Redis will write a pid file in /var/run/redis.
之前的路由模式是通过key相等来匹配 而通配符,顾名思义,符合条件,则进行消息匹配发送 将路由键和某模式进行匹配。此时队列需要绑定要一个模式上。 符号“#”匹配一个或多个词,符号“*”匹配不多不少一个词。
路由模式其实和订阅模式差不多,只不过交换机的类型不同而已 路由模式可以用下图来表示,比订阅模式多了一个key,举个栗子就是根据不同的人群来订阅公众号,来收取消息 根据不同的key来获取不同的消息 最简单的就是男性用户以及女性用户的关注信息是不同的,推送的内容当然也是根据不同分类来推送 ...
之前讲的消费者互相可以把队列中的消息全部读取,但是不是读完整的所有信息 那么采用订阅模式就行,这就是微信公众号的模式, 比如10个人订阅了我的公众号"BeJavaGod",当我发送一条消息的时候, 那么这10个人都能收到我的消息并且查看,比如本条消息,对吧? 生产者制造消息发送给交换机X...
上篇文章讲了简单队列的使用,这其实就是RMQ给的demo,实际并没有什么用 本篇讲讲工作模式队列,也称之为任务队列 一个生产者发布了多条消息,消费者A可以接受消息,接受消息后该消息就消除,消费者B可以接受其他消息 使用场景,一些数据库操作比较缓慢的话可以分别给多个接口调用,降低压力,或者抢单场...
消息队列目前流行的有三种 1. RabbitMQ 2. ActiveMQ 3. Kafka 这三种都非常强大,RabbitMQ目前用的比较多,也比较流行,阿里也在用 ActiveMQ是阿帕奇出品,但是性能上和RMQ相比相对差一些 卡夫卡呢,使用场景不同,不多介绍,主要是用于日志收集方面,结合hadoop非常灵活 RabbitMQ官网:http://www.
在springmvc.xml中加入 1 2 3 4 5 6 classpath:resource/ValidationMessages 7 ...
对于现在的分布式开发, 一套机子要跑多个服务,开多个虚拟机,数据库,redis集群,solr集群,内存占用率动不动上10g,以最低适用的机子配置给开发员,应该可行了吧。。。 CUP肯定得i7 内存8g,个人认为偏少,建议12g,最好16g。
tomcat7部署,项目发布有很多种方式 1. 增量发布,把修改过得那些文件手动上传至tomcat,*.class *.xml 等等,这样的缺点非常大,需要断开tomcat,记住那些你修改过得文件,很繁琐,我曾经经历过,值得吐槽 2.
SSO,Single Sign On,也就是单点登录,保证一个账户在多个系统上实现单一用户的登录 现在随着网站的壮大,很多服务会进行拆分,会做SOA服务,会使用dubbo做微服务,或者简单的小型分布式, 这样在服务与服务之间,或者系统与系统之间都是通过HTTP或者restful来进行通信的, ...
上篇文章搭建了zookeeper集群 那好,今天就可以搭建solr搜服服务的集群了,这个和redis 集群不同,是需要zk管理的,作为一个代理层 安装四个tomcat,修改其端口号不能冲突。8080~8083 如果是正式环境下,则分别使用4台linux作为节点 修改server.
springmvc的controller很多都用来提供restful服务,成为多功能action 同一个接口既能够提供给web端,也可以提供给ios以及安卓 @RequestBody 可以把接收到的json字符串自动转换为所对应的对象 json对应的client 如果不写@Re...
freemarker可以脱离web使用 前一篇文章使用了普通的方法 这回说说结合spring pom额外引入这个jar包 1 2 org.springframework 3 spring-context-support 4 ${spring.
如今前后端分离,动静分离 使用freemarker实现动静分离,nginx处理静态资源文件,提高效率 加载jar包 1 2 3 org.
在使用redis时,有时回存在大量数据的时候,而且分类相同,ID相同 可以使用hset来设置,这样有一个大类和一个小分类和一个value组成 但是hset不能设置过期时间 过期时间只能在set上设置 1 // 向redis中添加缓存 2 jedisClient.
Redis真是好,其中的键值用起来真心强大啊有木有, 之前的文章讲过搭建了redis集群 那么咋们该如何调用单机版的redis以及集群版的redis来使用缓存服务呢? 先讲讲单机版的,单机版redis安装非常简单,不多说了,直接使用命令: 1 [root@nginx bin]# .
solr,什么是solr,就是你要吃的东西“馊了”,不能吃了,out of date~ 嘛。。。开个玩笑,发音就是‘搜了’,专门用于搜索的一个开源框架,lunce就不说了,不好用,麻烦 来讲讲solr吧 目前最新更新的是6.0,4月7-8号更新的,哥不太喜欢用新出来的版本,多多少少会有bug,centos7出来后我至今使用的是6.5(实在无法忍受7啊。
在如今并发的环境下,对大数据量的查询采用缓存是最好不过的了,本文使用redis搭建集群 (个人喜欢redis,对memcache不感冒) redis是3.0后增加的集群功能,非常强大 集群中应该至少有三个节点,每个节点有一备份节点。
在上篇中提到了spring4.1+支持jsonp的调用,做了个例子,用来在页面上展示jsonp: (js写的丑了点,本人后端出生,前端大侠们轻拍~) 1 var Menu = function () { 2 3 return { 4 getMenuData: function (json) { 5 console.
如今的巨石应用已经越来越不行了,很多互联网在后期都会在用分布式的架构 那么在页面上不同的服务调用不同域名下的json是有问题的 (跨域:不同域名,相同域名但是不同端口) JavaScript规范中提到的json是不能直接跨域调用,为了安全,但是能调用js片段 所以把json包装为一个js片段,也就是jsonp那么就能够跨域请求 在spring4.
大数据大数据,身边很多朋友都在谈大数据,Big Data!!! 到底是什么,用来干嘛的,也很少有人说得出一二,那今天开始就简单说说这一二事吧 hadoop 的来源:是作者女儿的一个玩具 - 一只黄色的大象 发音 /hadu:p/ 在Apache旗下作为一个开源项目 它不是云计算,却是...
今天新创建了一个java的公众号,会经常更新java的文章,有兴趣的朋友关注一下吧~ 主要内容基本是跟本微博同步的 不管是做java的新手还是高手,内行还是外行,java还是非java,一起关注,一起学习,精益求精 还有... 我的心愿是: 世界和平...
什么是FastDFS FastDFS是一个叫余庆的哥们用c语言编写的一款开源的分布式文件系统 功能有冗余备份、负载均衡、线性扩容等,高可用、高性能 可以用FastDFS搭建一套高性能的文件服务器集群提供文件上传、下载 fastDFS又区别于Hadoop的HDFS,前者用于上传下载文件或...
先来说说正向代理 就是普通的代理,记得高中年代偷跑去网吧是要办卡的 题外话: 就是这货。。。相信很多80同龄人都有吧。。。 回到正题,那正向代理就不让你直接访问网络,而需要登录一下网吧的某个系统,那个就是代理服务器,这样你才能上网 那反向代理其实就是这样的: 当你访问淘...
这两天有俩哥们问了我linux的事,问我在工作中需不需要用到,需不需要学会 一个是工作1年不到的,我跟他说,建议你学学,在以后肯定是要用到的,虽然用到的机会不多,但是会总比不会好 另一个是工作6年的,居然不会linux,跟我说他很排斥linux,为啥呢,因为工作中不需要用到,而且公司有运维,运维...
一、什么是nginx 是一个C语言开发的HTTP反向代理服务器,性能非常高 一个俄罗斯的哥们开发的,官方提供的测试性能能够达到5W的并发,我的天呐~,实际测试差不多是2W,而淘宝的牛人可以优化到200W 运行效率非常好,占用的资源也非常低,运行稳定 二、Nginx的应用场景 有哪些 ...
最近经常有人问图片上传怎么做,有哪些方案做比较好,也看到过有关于上传图片的做法,但是都不是最好的 今天再这里简单讲一下上传图片以及图片服务器的大致理念 如果是个人项目或者企业小项目,仅仅只有十来号人使用的小项目,可以使用如下方案: 用户访问系统,使用上传图片功能,那么图片就上传到你的当前项目所...
...
企业开发中所用到的基本jar包以及插件都已在此 可以自己根据实际情况酌情增减 1 3 4.0.0 4 com.lee 5 lee-parent 6 0.
Ehcache是一个开源Java分布式缓存。可以配合mybatis来使用 首先,在资源文件夹中新建ehcache.xml 内容如下: 1 2 4 5 6 7 8 9 10...
maven出现后,很多公司会用maven来构建项目,单仅仅只是单项目单工程的 并没有使用多工程来构建,这样在以后,项目越来越大,业务越来越多以后,项目会难以维护,越发庞大,维护成本提高,团队士气也会下降 等等情况,使用maven构建多工程就是如今的趋势 这边演示一个maven工程相互依赖的例子,高手轻拍,大家互相学习,有不足之处请指出 1.
原文地址:http://www.infoq.com/cn/articles/flash-deal-architecture-optimization 一、秒杀业务为什么难做 IM系统,例如QQ或者微博,每个人都读自己的数据(好友列表、群列表、个人信息)。