Unibook


花了点时间做了个小App,面向北美的用户,可以交易二手大学教科书。
架构是Nginx(Proxy)+NodeJS+Redis+MongoDB+Objective C
第一次使用 lets encrypt的免费HTTPS证书服务。感觉还是不错哒。证书服务开放开源有利于更多的网站转为HTTPS链接,这样会减少类似域名劫持的风险。还有一点值得点赞的是,iOS的plist可以禁止非HTTPS访问。
MongoDB终于不用担心SQL注入了。因为MongoDB会自动把String转为BSON,再存储。不过Javascript注入还是有可能的,因为MongoDB是允许执行特定的JS代码的。所以还是要过滤特定字符。有一个叫做 Content-Filter的开源代码我觉得写的挺好的。在JS层面解析JSON,监测到Object和Function类型后再过滤,而不是过滤所有的字符。当然,可能还是有漏洞,这个就慢慢地去学了。
Redis的Index还是要技巧的。这一次感觉搜索的功能做的不大好,没有做好关键词的联想,只是单纯地搜索课程代码。比如CSC411, 如果搜索CSC41, 就搜索不到了。
Nginx的反向代理也是第一次使用。本来想用Node Cluster, 但感觉那玩意儿维护起来没有Nginx方便。
亲测了下,发现1Core+1G RAM+1Mbps的阿里云ECS大概撑到1M/S就撑不住了。使用一台Macbook创建1000个并发连接,服务器基本就被阻塞了,而且是在我已经开了三个worker的情况下。当然在用户量少的情况下(most likely so)还是不用往上scale的。当然scale也很方便,直接horizontally scale就好了。
本来想用Socket做一个Chat,但是觉得太费时间,而且人们已经有facebook微信了,所以最后干脆使用每个大学生都有的学校官方email作为验证方式和沟通渠道。比如@harvard.edu, 只有Harvard的学生才能注册和使用。闲杂人等一律屏蔽掉。
iOS的屏幕size简直是五花八门了。这一次光是适配iOS的屏幕就花了几个小时,而且还做不到完美适配iPhone4S以及iPad。有那么一瞬间我觉得苹果已经lost its way了, 就想乔帮主出走Apple后的状态一样,乱糟糟的,急于变现Cash Cow. 
另外,发现从北美访问阿里香港的服务器延迟会有点高。而且在启用redis的时候,阿里云ECS的安全组策略并没有发挥作用,把redis的端口向全球开放了,最可笑的是我居然用telnet连上了。后来赶紧绑定本机。
其实做这个App的主要是是练手,而且想做一个实用型用的App。之前写的几个App,都觉得过于关注商业模式,有点浮躁、浮夸了。
这一次不想改变世界。就这样静静地在网站上挂着吧...
写了个英文简介,自己从Quora手动转过来的。自己转自己的,不算抄袭吧~
If you are a University student, you can check this site:
I developed this App myself, using a month or so. It is what I would call "workable App" - nothing too fancy, just a simple platform for students to exchange second hand textbooks.
You enter the course code to search - such as "CSC411" - and the platform will return a list of the textbooks with the course code on sale.
All users will be verified with their official University email address. For example, email addresses ending with "@utoronto[DOT]ca" will be able to register as a student in the University of Toronto.
I am still testing it - and currently there are only three universities enabled. You can always shoot me an email to if you would like to add your university on the list. (jinhua.wang@hereips[DOT]com)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值