会搞服务器的前端狗

说在前面

话说上回我的一篇《从0到1的团队》吸引到了一位明星作家,为什么叫明星作家,因为他随手写了一篇文章后有报社问他要稿。哈哈,一鸣惊人!对,他就是我们团队的第七号成员--斌哥。我们团队一产品经理,一财务,一编辑,一设计,三iOS工程师。

对了,我们后端服务器谁搞?尼玛,从组队开始我就一直纠结这个问题。后来没办法,斌哥忙两个项目,饼仙是新手。最后只能由我来去搞搞佢咯。我们的策略是采用第三方服务器平台,有阿里云服务,腾讯云服务,百度,微软,亚马逊。除了百度没去了解,其他都了解过了。

事情经过

事实上这些云服务都是组合使用的,什么开放存储服务OSS、内容分发网络CDN、云数据库RDS等等,对于一个iOS开发者来说真尼玛蛋疼。看着各种计费,真不知道该怎么算。由于我们主要做产品推荐服务,那么怎样结合这些服务省钱呢。当然我脑海中模型大概是:我们需要一个存储资源的服务器,还要一个查询产品关系结构的SLQ数据库服务器。

以上也引出了第二个困难,产品推荐搜索和查询都需要写服务器的代码,虽然会点Java语言,但毕竟只是会语言而已,JavaEE可不懂 。没办法,看来需要找人帮助了。打听到产品妹子认识很多计算机工程系的人,就找到她诉说了我们遇到的困难,关于那些编写专业的服务后台程序我们没法做。

产品妹子反馈的信息却是:计算机工程系的哥们觉得我们三个工程师连这个都搞不定,很菜的样子(大概意思)。多次交涉无果还被喷了,此时此刻请容许我喝一杯82年的雪碧压压惊。


82xuebi.jpg

当时我愤怒了,回了妹子一句“真是个眼高手低的家伙”,随后我又收回这句话并道歉了。想想每次看技术大会,各大互联网公司都在吹自己的服务器多牛逼,服务架构多牛逼。居然瞧不起,说如此简单的事都搞不定。虽然这是个兴趣项目,但也要为后期想想吧。前期的不专业会为后续带来沉重的打击的。后来知道编辑手的男友是搞Web前端的,向他请教,虽然他回复说服务器这块不太懂帮不上忙。但很佩服这认真的态度。马云说,我们要有敬畏之心。人太容易浮躁了,随时提醒自己保持敬畏之心。

回过头来,我也去请教老师了,不过老师说可以用自己的电脑做服务器。后来我用XAMPP这个Mac软件实现了,在路由器设置一下,外网也可以访问。不过不太好,不开电脑就没数据了!!!杯具。

还是试试云端平台吧,腾讯的云只有15天试用期有点少,没考虑(我们的财务只是来打杂的,千万别告诉他)。亚马逊免费一年,不过服务器不太稳定(国外的)。微软云一元用一个月,不过去看看收费介绍,吓晕了。最后阿里云,看了好久好久,仔细看了OSS存储。最后选用了阿里云。其中各种云平台的文档没少看,头晕目眩的。最后提一提tower上赠送的1500元启动资金根本就是用来看的。

遇到困难

一个外行进入不熟悉的领域就像一只羔羊迷失在厕所,最后哭晕在厕所。各种注册实名制就不说了,说说其中麻烦的流程吧。不得不说阿里的安全意识非常强,各种验证和加密把我搞得头晕目眩MD5、哈希、base64之类的。文档一遍一遍地看,感觉有点感觉的时候忽然想起会不会有iOS的SDK呢?结果一搜真有,马上下载SDK瞧瞧,操作蛮简单的,几乎什么都做好了,主要是传值而已(SDK中各种类的协作还是要仔细研究的)。【呦,有SDK使唛惊啊!】

在看SDK的时候,其中有一个参数是资源键(resources key)。由于没经验,不知道有经验的人是否马上能看出是什么鬼。结果折腾来折腾去老是返回not found,想想服务器控制中心有了,主机名有了应该差资源服务器上的路径了,怎么变URL是不能变的啦。结果一试O了。资源路径为什么要叫资源键?


BruceLee.jpg

当然这样的服务器只能用来做简单的事情,毕竟不是行家,所以没有把数据搞活。大体把资源分成三部分其中再细分到每年、每月、每星期,一个文件夹存放图片资源,一个文件夹存放具体某个产品的JSON文件,一个文件夹存放获取所有产品的JSON文件。下面是自己编的JSON文件,因为考虑他们要用CoreText排版,(暂时,UI他们负责),就把文章按段落分开了,感觉不太妥但又毫无办法(每次我在他们面前提起,然后就没有然后了)。

  • 产品列表JSON
    {
    "products" : [
    {
    "title" : "从0到1的团队",
    "description" : "",
    "productContentURL" : "ArticleJSON/1508/4/0825.json",
    "productImageURL" : "ProductImage/1508/4/101.png",
    "date" : "20150825"
    },
    {
    "title" : "还在叫她多喝水吗",
    "description" : "",
    "productContentURL" : "ArticleJSON/1508/4/0826.json",
    "productImageURL" : "ProductImage/1508/4/201.png",
    "date" : "20150826"
    },
    {
    "title" : "喵星人的窝也傲娇",
    "description" : "",
    "productContentURL" : "ArticleJSON/1508/4/0827.json",
    "productImageURL" : "ProductImage/1508/4/301.png",
    "date" : "20150827"
    },
    {
    "title" : "你以为 这是水瓢吗",
    "description" : "",
    "productContentURL" : "ArticleJSON/1508/4/0828.json",
    "productImageURL" : "ProductImage/1508/4/401.png",
    "date" : "20150828"
    },
    {
    "title" : "有一只碗 它的名字叫做初心",
    "description" : "",
    "productContentURL" : "ArticleJSON/1508/4/0829.json",
    "productImageURL" : "ProductImage/1508/4/501.png",
    "date" : "20150829"
    }
    ]
    }

  • 具体某个产品JSON
    {
    "title" : "从0到1的团队",
    "contents" : [
    {"image" : 0},
    {"subTitle" : "关于我们"},
    {"detail" : "从这个微信平台建立的第一天起,我一直在想,第一篇推文,我要说点什么。"},
    {"detail" : "几个素未谋面的人,面对现实的铜墙铁壁,赤手空拳,却热情满满。"},
    {"detail" : "【产品经理】听说一开始这是极客班的一个产品勾搭项目,明明可以靠脸却偏偏要靠实力的产品经理阿酸凭借独特的创意和强大的忽悠能力成功勾搭了IOS班的几个程序猿大师…"},
    {"detail" : "【攻城狮1号】噔噔噔,汪星人红雷哥闪亮登场!如果你以为程序员只会在深夜里撸代码,那你就错了。自从红雷哥在“简书”上发表了关于我们团队的一篇文章“从0到1的团队”,我就感觉到我的文案狗地位岌岌可危了…"},
    {"detail" : "【攻城狮2号】第一次语音会议听到饼仙超级好听的普通话就自行脑补是一个帅小伙(此处应该有口水…),发言不多然而句句重点,情商与智商兼备的男银!!!(噢好像还只是个即将大三的男生…)"},
    {"detail" : "【攻城狮3号】被红雷哥的那篇“从0到1的团队”吸引而来中途加入却有勇有谋的江先生(然而他并不姓江…),家住海边一天三餐都吃鱼的渴望自己的技术笔记能和励志鸡汤一样获赞无数的明星主编…"},
    {"image" : 1},
    {"detail" : "【财务总监】傲娇一根筋的财务小王子光哥,目前团队没半分钱管理却是阿酸的得力助手,出主意打下手无怨无悔(然而听说产品经理是他的小粉丝…)。"},
    {"detail" : "【设计师】实习工资不高工作时间却很长,超级负责任的美女设计师!什么?你问我没见过怎么知道是美女?我只能回答你学设计的一般都不会长的太差…"},
    {"detail" : "【文案编辑】入了这一行才知道行行都是坑的文案狗正在默默码字当中,还要被红雷哥催稿简直天理难容!嗯哼没错这个人就是我…"},
    {"detail" : "【Zerone零一】“零一”是我们的团队名字,“Zerone”是英文名。当阿酸宣布这个名字的时候,红雷哥说查一下有没有人用过了。阿酸说:“哈哈没关系啊马云成名前也有很多个人叫做马云。”噢没错就是这么傲娇…"},
    {"image" : 2},
    {"subTitle" : "关于1Percent"},
    {"detail" : "1Percent这个名字的确定经历了蛮激烈的讨(si)论(bi),毕竟,重要的东西都来之不易。1Percent,很多人第一直觉就是“什么鬼?”,然而要告诉你这不是鬼,而是一个活脱脱的优质生活用品推荐平台。接下来请自动切换小清(zhuang)新(bi)阅读模式…"},
    {"detail" : "【听】一个闲适的午后,阳光倾泻而下,坐在窗边,淡雅的桌布,精致的杯具,牛皮色的笔记本,一颗自由的心…你所能想象到的,这里都会为你呈现。每日推荐优质生活用品,让精致的生活不再只是“听”说。"},
    {"image" : 3},
    {"detail" : "【说】“这世界上一定有另一个我,做着我不敢做的事情,过着我想过的生活。”你一定没有想过,你以为的平淡无奇,也许是别人梦寐以求的生活。在这里,你可以尽情大胆地“说”出自己喜欢用的好东西,和大家一起分享属于你的优质生活。"},
    {"detail" : "【1Percent】这是一个致力于为您推荐优质生活用品的平台,用1%的视角,品味99%的生活。"},
    {"image" : 4},
    {"subTitle" : "最后"},
    {"detail" : "我们这样一群人,也曾孤独地立在车水马龙中不知身在何方,也曾昏睡一天后一碗泡面打发人生,也曾随意对待生活面目可憎。今天看到一句话:“世俗的眼光,现实的残忍,让你不得不按部就班,朝九晚五,只因我们都太害怕和别人不一样了。”"},
    {"detail" : "那么,盲目也好,任性也罢。就让我们做点不一样的事情吧。人生苦短,难道你还要继续辜负下去吗?"},
    {"ending" : "我所理解的生活\n 就是扫一扫 加入我们"}
    ],
    "images" : [
    {
    "imageURL" : "ProductImage/1508/4/101.png",
    "imageWidth" : "",
    "imageHeight" : ""
    },
    {
    "imageURL" : "ProductImage/1508/4/102.png",
    "imageWidth" : "",
    "imageHeight" : ""
    },
    {
    "imageURL" : "ProductImage/1508/4/103.png",
    "imageWidth" : "",
    "imageHeight" : ""
    },
    {
    "imageURL" : "ProductImage/1508/4/104.png",
    "imageWidth" : "",
    "imageHeight" : ""
    },
    {
    "imageURL" : "ProductImage/1508/4/105.png",
    "imageWidth" : "",
    "imageHeight" : ""
    }
    ],
    "creationTime" : "20150825",
    "editor" : "仙子",
    "pictureProduction" : "画家 Yuliya"
    }

我把这些JSON文件做了模板,希望编辑手可以按照这些简单的规则,把文章按段落填入空中,把图片按排列顺序填上资源路径。然而她拒绝了我,她居然拒绝了我 !!!

whatdoyoumean.jpg
完结

服务器数据总算搞定了,那只要对数据封装成数据业务层交给他俩就OK了。数据业务层主要负责获取数据,至于来自硬盘还是网络不需要UI工程师知道。在网络请求图片数据时对tableViewCell的滚动做了请求优化(请求还没落地时不再发起请求,如果内存中有在内存中取)其中图片也做了内存缓存,做硬盘缓存大概不难。难点在于要把它抽象成模块,SDWebImage有时间真要好好研究才行。

能力有限,做得不够满意。但不能妄自菲薄,加油!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 158,560评论 4 361
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,104评论 1 291
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,297评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,869评论 0 204
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,275评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,563评论 1 216
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,833评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,543评论 0 197
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,245评论 1 241
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,512评论 2 244
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,011评论 1 258
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,359评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,006评论 3 235
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,062评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,825评论 0 194
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,590评论 2 273
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,501评论 2 268

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 170,566评论 25 707
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,099评论 18 139
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 11,612评论 4 59
  • Swift版本点击这里欢迎加入QQ群交流: 594119878最新更新日期:18-09-17 About A cu...
    ylgwhyh阅读 24,858评论 7 249
  • 小石头村在北方的深山之中,由于没有种地的条件,村民们靠卖石头维持着生活,少说也有上百年了。 在这穷乡僻...
    Jorden1014阅读 258评论 0 3