https://www.myziyuan.com/
- 111
- 最开始的技术选型秉着简单清晰、尽快实现想法,减少复杂的引入,但是要尽量为以后的扩展做好准备这么一种想法。很多互联网创业心灵鸡汤比如《黑客与画家》、《Rework》也都大概是这么提倡的,先把东西迅速做出来,然后根据用户的回馈发现问题快速迭代。下面介绍一下我选用的技术栈: 1. 语言: 人生苦短,我用Python 2. 存储和数据访问工具: 这年代存储面临的选择的确很多,但我还是选择自己最为熟悉的MySQL,原因不必多说。根据之前的经验,像是用户表这种会保持不动,但是有些表,比如feed index我在一开始就做了sharding的处理(关于feed的实现和存储结构我在后面会进行介绍)。另外很重要的东西就是数据访问层的实现了,虽然有些东西,比如读写分离的支持,现在不会用到,但是我觉着要支持,最起码要考虑这种情况将来会发生,到时候不至于太苦逼的到处重写代码,另外对于sharding,要做到跟访问通常的表类似的轻松,最后要带点儿ORM功能。 做的第一件事情就是写这个数据访问工具,业务就是增删改查么,没有这家伙还怎么活!?用python两三百行代码对web.py的数据访问模块做下包装就搞出这么一个东西来, 最终可实现读写分离和对sharding的支持。当然在用的过程中发现问题不少,有些查询不能很好的满足需求啊等等,完善中。 3. 缓存 因为这个项目属于80/20那种课余爱好,资源较少,最开始也不想大推,只是给周围的小伙伴们先玩玩,程序员怪叔叔搏妹子一笑什么的,能有两三台机器就很不错了,所以对于传说中的分布式缓存,想想还是算了,多数东西还是直接读库,但是还是搭了个Redis,做啥用?主要是三件事情:1、保存token 2、记录用户在线状态 3、防刷业务 “你输入的太快了,请休息一下继续”之类的。但是所有数据的获取还是走的存储层,到时候如果要加缓存,可以直接在存储层去加,而不必去侵犯上层业务逻辑。 4. 静态存储 做社交对图片的质量要求是很高的,多数都是会在后台专门拿出机器搭image magic等切图服务,但对于初创的社交app,搞这种东西挺耗费资源的
- 2021-02-24 11:35:01
- 你大爷
- 一、安卓APP 用android-killer可以反编译apk,比较方便,不过只能看到smail文件,学习一点smail,你可以看明白他的源代码的意思,如果有壳的话,先改apk后缀后为zip,找到加壳的so文件,一般如名字中带xxxprotect.so 用百度,360,腾讯厂商加固的话,也都有对应特点,然后把这个so文件用IDA pro打开,找到它的关键加密算法。找到后,一版是不让进加密算法,直接return。就可去壳,去了壳之后,再进行重打包签名,测试下。二、ios上的app一般走如下流程1、 拿个越狱机-下好工具2、 去越狱平台下个想分析的应用(或者去app store下,用解密工具解密一下)3、 导入reveal分析页面,得到想要的知道的具体视图类或者大致范围4、 分析class-dump中,找到想要的类和函数5、 在IDA或者Hopper中找到具体函数,查看汇编逻辑6、 修改相应的逻辑,达到篡改目的,重新打包
- 2021-02-12 00:05:05
- qian
- 怎么自己开发一款app软件,没有编程基础的话,可以从编程的入门开始学,比如basic和pascal,再转C语言,慢慢看看c++,java之类的。JAVA是安卓app开发的基础语言,从变量,函数,类,借口的创建和使用,到各类常用API的使用。比较常用的技术先学,打好基础是关键,包括:1、Activity生命周期 2、界面开发技术3、数据存储技术 4、网络编程。如果你觉得时间有点长,推荐在线应用开发平台——应用之星,这个网站无需编程和代码,小白用户也能在线开发app。如果你还有问题,欢迎继续追问我哦~
- 2021-02-12 00:05:05