2017-03-14 15:29
@小飞象 在这里找一下:https://www.oschina.net/search?scope=blog&q=jfinal%20dubbo
2017-03-14 15:00
@小飞象 微服务架构,本质来说就是分布式架构,意味着你要将原来是一个整体的项目拆分成一个个的小型项目,然后利用某种机制将其联合起来,例如要引入服务治理、通信框架等基础设施,而这些工作除了会提升复杂度、提升开发成本、提升部署成本以外,还在一个侧面上拉低了性能,因为分布式结点间的通信与协同比在同一机器上要耗时
因此,很多项目为了提升性能,首先会选择做集群这个路径,集群这个方向做到头,再去考虑做微服务这种分布式架构
所以我个人认为微服务现在很热是被炒起来的,应用场景并不是那么地大,而集群方案只需要一个 nginx 做负载就可以搞定了,简单地多
综上,现在市面上的现成的微服务开源项目并不多,人是倾向于理性的,都会先选择最划算的方案。在 git.oschina.net 上去搜搜应该可以找到一些
2017-03-14 12:24
@EATI001 这个非常有用,单写一个 share 分享贴出来啊,我收藏一下,好多人要呢。只要将上面的 routes 扩展,与 ShirExt 扩展代码分享出来就齐活了
2017-03-14 12:16
自 jfinal 2.1 开始,对路径相关功能引入了 base path 的概念,也就是说上传、下载有相对应的 baseUploadPath、baseDownloadPath 设定,这个 base path 是固定的,在配置的时候可以使用以 "/" 或 "x:/" 打头的方式指向一个绝对路径
该绝对路径可以设置在项目之外的地方,一旦这个 base path 设置好了,那么文件上传、下载都将在这个 base path 路径之下玩耍
因此,在 getFile(...) 时指令的路径,也只是相对于 base path 的一个相对路径而已,如果确实希望让路径更加灵活,可以尝试下面两种方式:
1:将路径设置在更浅的目录,例如设置为 "/" ,那么在 getFile 时指令目录的空间范围会大,应该可以满足需求
2:在 getFile(..) 以后,通过 renameTo(newPath) 将文件转移到希望的地方
2017-03-14 12:10
jfinal 的 Handler 在本质上就是为了让 web.xml 中干净清爽,并且覆盖掉 filter 的功能
所以,这个方向是对的。用的时候,先了解一下第三方 filter 之中的过滤规则,然后将这个规则放在 Handler 中体现就好了,Filter 中也仅仅是在处理 request、response,而 Handler 中也是在处理这两个东东
此外,还注意一下调用的传递,在 Filter 中是通过 filterChain.doFilter(...) 将本次请求转交给剩下的 filter 的,而 Handler 中是通过 next.handle(...) 将本次请求转交给剩下的 handler 的