-
finagle简单使用
在看awseome-scala的时候,正好看到了twitter的finagle。自己公司里貌似也有那种关注load balance等的解决方案,不过不是很容易理解。考虑到自己之前几个月都在弄电子技术了,重新弄点网络相关的把。 这次的任务是做了一个thrift+finagle的远程服务调用例子。其实不是很难,如果不是连续碰到finagle的坑的话。finagle是twitter开源出来的一个分布式系统解决方案,毕竟是大公司出来的东西,更新频率特别是文档很低,很多文档基本都是几年前,好在有代码……
-
rabbitmq在scala下的使用尝试
最近重拾scala,由于某些原因想要尝试了rabbitmq。于是便有了这块代码。 刚才重新看了rabbitmq的官网,上面关于scala的客户端的信息貌似更新了?之前那个lift-amqp太旧了,没法使用。不过没关系,这篇就当做了记录下如何在scala的环境下用rabbitmq的Java客户端。如果你想直接用现成的scala客户端,可以参考这里。 首先你要安装rabbitmq,这样之后好测试。mac下用brew安装命令是 $ brew update $ brew install rabbitmq
-
null-safe和scala的monad
长久以来,习惯了写如下的Java代码: User user = userService.get(1); if(user != null) { doStuff(); } 称之为null检查,亦有null != user的尤达式写法。 在学了Scala之后,知道了Option,改用如下写法:
-
scala版本的grails分页代码
大家平时见过这样的分页么?见过的话知道怎么写么?没见过的话有思路么? Previous 1 .. 3 4 (5) 6 7 8 .. 10 Next 就本人的话,在用grails时见到了这个强大的分页功能,但是对于里面的代码和思路一知半解。 今天心血来潮想要重新理解下原理,所以花了点时间分析了下实现,最终在回家的地铁上基本明白了其中的逻辑,特此写文分享。 在展示最终的scala代码之前,先说下分页中的几个概念,同时为了方便,这里取用grails中的变量名: