Popular Tags:

RPC(一):基于python实现简单的RPC框架(上)

September 7, 2016 at 10:36 pm

似乎又要放着以前无数个坑不填来挖一个新的坑了,不过这次并不打算挖很深的坑。其实挺早就有对现有的RPC框架有一个简单的理解的想法,所以本文的初步想法是模仿tinyRPC来简单模拟一下RPC框架,这也是本篇的主要内容。如果后面有续篇的话,会花些时间看看像gRPC这样的库的实现机制,不过目前暂时也没有这方面的打算,所以目前而言本系列应该仅此一篇。如果一切顺利的话,之前的坑会在回到学校之后慢慢开始填。废话不多说了,先进入正题吧。 本文主要包含以下内容: 1. 客户端的类本地化调用 2. 序列化协议的设计 3. 通信协议的设计 客户端的类本地化调用 RPC框架中最基本的两个要素是客户端和服务器端,客户端是远程过程的调用者,而服务器端则是过程的实现者,所谓的RPC(Remote Procedure call),就是希望客户端可以像调用本地函数一样调用服务器端的函数。为了做成一个框架,我们需要让客户端可以实现任意函数的调用,由于本文使用python实现,这里利用python的__getattr__(self, name)函数来较为简单、干净地实现这个功能(在python中,如果访问一个类的属性,包括方法不存在时,会调用这个类的__getattr__()来试图返回这个属性或者这个方法的值,对于方法而言,此时可以返回一个函数,这个新的函数将会被调用。这个函数名字有一定的困扰,但在这里使用它可以极大简化代码)。 通过这个函数,我们可以将所有的远程过程调用统一到client的call方法里去: class RPCClient(object): def __getattr__(self, name): func […]

翻译习作:昭和杂货店物语2里的信件(15)

September 5, 2016 at 12:12 pm

父上 父亲大人 戦地より、この手紙を送ります。 现在在战地上,给您寄这封信。 人に見つかれば処分されています。 如果被人发现的话要被处分, 走り書き「1」のような手紙になること、 所以写得很匆忙字迹很潦草, お許し下さい。 请见谅。 このようなこと、 我明知道这样的事情 頼める筋合「2」いではないことを 并不合情合理,但仍希望可以 承知でお頼みします。 拜托您。 家族のこと。家内と太郎のこと、 是指家里的事。妻子和太郎, どうかよろしくお頼みします。 恳请务必照顾好他们。 […]

翻译习作:昭和杂货店物语2里的信件(14)

September 4, 2016 at 12:42 pm

太郎へ 太郎 久子さんより住所をお聞きして、 从久子那里问到了地址, この手紙を送ります。 给你寄这封信。 こうして便りをするのは、 像这样给你写信, いったい何年ぶりでしょう。 到底已经隔了多少年了。 久子さんから、 从久子那里, いろいろなことを聞きました。 知道了很多事情。 生活苦「1」のこと、病気のこと、 生活的艰苦,生病的事情, そして、お腹の子供のこと。 还有,肚子里的孩子的事情。 お前はその全てから逃げ出して、 你一直以各种借口,逃避着 […]

javascript漫谈(二):闭包

September 3, 2016 at 7:27 pm

这两天睡的时间相当的长,脑袋已经有点麻木了,真正顺着这个思路,慢慢地回血吧。今天挖出了很多个月前的对于javascript的坑,虽然说接下来写javascript的机会越来越少...... javascript中的闭包是一个对于初学者(如我)来说非常容易感到困惑的术语。这个术语经常听到,但是却很难说清楚它到底是什么。实际上对于闭包的使用目前来看我使用的也并不多,所以也没有什么资格说它到底是好还是坏,本文主要是从一些基本的概念出发,简单分析一下闭包到底是什么。 javascript中的变量作用域 在传统的编程语言(如C语言)中,每个变量都有自己的作用域,通常,它们被分为全局变量和局部变量两个大类。全局变量可以在任何地方被访问到,而局部变量仅在定义自己的作用域中才可以被访问。通常来说,在函数内部定义的变量,其作用域在函数内部,外部函数是无法访问的。 在javascript中,函数中声明的局部变量也无法在函数外部被直接访问(如果省略关键字var,那么实际上定义的是全局变量),下面的代码会报错。 function a_function() { var dd = 5; } a_function(); alert(dd == null); 这样的结果非常直观、自然。那如果在内部访问外部变量又是怎样的情况呢? 下面的代码会输出什么呢?如果依次再注释掉标记为1,2,3的行,输出又是什么呢? var […]

翻译习作:昭和杂货店物语2里的信件(13)

September 2, 2016 at 5:50 pm

久子様 久子小姐 突然お手紙をいただき、 突然收到你的来信, 大変驚いております。 着实让我大吃了一惊。 もう、何が何やら「1」気分が動転「2」して、 我现在实在是有点 これからどうしたらいいのやら。 手足无措了。 でも、まず、あの子が人並みの 不过,首先,仅仅是知道这家伙 幸せを手に入れていることを知って、 已经拥有了一个幸福的家庭, それだけでもう、胸がいっぱい「3」です。 光是听到这个,我就已经激动不已。 久子さん。 久子小姐, あの馬鹿息子に尽くしていただいて、 一直以来在我那个混账儿子的身边照顾他, […]

翻译习作:昭和杂货店物语2里的信件(12)

September 1, 2016 at 10:34 pm

母さん 妈 また久しぶりのお手紙ですね。 距离上一次写信给你,又过了很久了。 母さん、いくつになられましたか…? 妈现在已经多少岁了? 親の歳も忘れるとは、 我竟然连自己母亲的年龄都忘了, とんだ不孝をお許し下さい。 请原谅这样大不孝的儿子。 酒の勢いを借りて、 借着酒势 この手紙を書いています。 写这封信给你。 作家としては、はなはだ「1」恥ずかしい 作为一个作家这 ことではありますが… 实在是有点不像样, いや、もう格好ばかりつける「2」のは 不,事到如今,也就别管 […]

想去看海

August 29, 2016 at 3:34 pm

果然负能量太重了还是设为仅自己可见吧,只把这首歌放出来应该没问题了。 海を見たいと思った 森田童子 夜汽車にて 在夜行列车上 ふと目を覚ました 突然醒了过来 まばらな乗客 暗い電燈 窓ガラスに もう若くはない 稀疏的乘客 昏暗的电灯 在窗玻璃上 看到了不再年轻的 ぼくの顔を見た 我的脸 今すぐ 海を 现在好想 今すぐ 海を 现在好想 見たいと思った 去看海 […]

想要看海

August 29, 2016 at 2:12 pm

之前的无病呻吟文基本上都设为仅自己可见了,虽然本来也基本不会有人看到,但还是希望这篇文章可以公开地发表,就像心里藏着的秘密,如果不说出来的话,会被憋死的吧。 这几天里脑袋里装的,无非就是对自己的痛恨、后悔、和对接下来工作的不知所措。一旦开始了找工作,什么工资阿未来阿之类的,就会不断在脑海里转悠。感觉在可以预见今后一成不变的生活,想要逃避,可又能逃到哪里去呢?其实自己心里也清楚,国外的环境绝不会不比国内好。语言的障碍,种族的不同,高昂的物价。其实自己,确确实实是无处可逃的。 自己已经排除了正确答案,却又何必在两个错误答案之间挣扎呢?退后一步,这一题做错之后,不是应该在其它的题目上多拿点分数么?话说回来,正确答案又是什么呢?没有一个是正确答案,又全都是正确答案。自己就是个农民,搬砖的,能奢望可以干什么呢? 阿,钱多活少,钱多活少,以自己的这种水平,这种颓废的性格,天天将这样的词挂在嘴边,又有什么意义呢? 我从什么地方,一直跑到了这里,为什么会跑到这里。无论是怎么阴差阳错的上了平中,怎么稀里糊涂来了浙大,怎么莫名其妙选择了计算机专业,又怎么不知不觉地读完了研究生。 很多东西我不想听到,可我也不知道,我到底想听到什么,想追求什么。或许如L大神的破解,是为了赢得掌声,而我学计算机,也只是希望系统给我一个红色或者蓝色的AC罢了。而一旦工作了,大概,再也体会不到AC的快感了吧。 仔细想想,人类是不是真的是地球生物和外星智慧结合的结果呢?否则为什么唯独人类,这样思绪万千,胡思乱想,而且还乐此不疲。 就像妖妖梦从来只打normal一样,一开始选择的时候,我就给自己选择了normal难度吧。幼时反驳母亲的话现在也一直映在脑里:“如果我再努力一点,那就不是我了。”在difficult难度被击败的挫折感,对nightmare难度的瞻仰,这些都不属于我,我只要在normal难度上玩耍就好了。就此,体会不到困难难度打败boss时的快感,也无法因此获得别人的赞赏。 明明有那么多跑在我前面的人,我觉放慢了脚步,越跑越慢,总是一不小心,就跑错了方向。如果大家的时间都一样,那,我到不了那种终点了罢。 不知不觉负能量越来越多了,还是抑制一下吧,或许再过个一两年,回头看看,会被自己现在的状态惊呆也不一定。 还是尽量打起精神来吧。 还是会不自觉地听起这首歌来,越听越绝望...... 海を見たいと思った 森田童子 夜汽車にて 在夜行列车上 ふと目を覚ました 突然醒了过来 まばらな乗客 暗い電燈 窓ガラスに もう若くはない 稀疏的乘客 […]

翻译习作:昭和杂货店物语2里的信件(11)

August 27, 2016 at 3:18 pm

母さんへ 妈 最近少しずつ満足のいく作品を 最近慢慢可以画出 描けるようになってきました。 令自己满意的作品了, ただ、残念ながら世間には 不过很可惜,世上能享受到 まだまだこの水準の作品を 这样水准的作品的乐趣 楽しめる読者が少ないようで、 的读者太少了, なかなか評判がついてきません。 评价一直不怎么高。 いまでは雑誌の挿絵「1」などを描いて 结果现在只能给杂志画插画 をしのいでいる「2」始末「3」です。 来勉强度日。 といったところですが、 虽说是这样, […]

翻译习作:昭和杂货店物语2里的信件(十)

August 25, 2016 at 3:32 pm

母さんへ 妈 久しぶりにお手紙しますね。 很久没有给你写信了。 そちらはお変わりありませんか。 你那边过得怎样? マンガの世界は本当に奥が深くて 漫画的世界真的是博大精深, 毎日が勉強です。 现在每天都在努力学习。 最近、私よりも若い作家が 最近,一些比我更年轻的作家们 次々とデビューして人気作品を 都一个接着一个出道、发表了 次々に発表するようになりました。 一部部大受欢迎的作品。 母さんも書店などで目にすることが 妈应该也在书店之类的地方 あるんじゃないでしょうか。 也有看到过吧。 […]