【转】通用架构师应该如何把控迁移技术方案

互联网金融行业发生了翻天覆地的变化,相对应的金融科技也在不断的更新和迭代,每次有新的软件系统出炉的时候,就是老的软件系统命运终结的开始,老的项目当然不会束手就擒,它也会做最后的挣扎,当你从它身上迁移用户或者商户的时候,它会给你带来很多麻烦,比如说,它会临时罢工、出现资金损失等等不可忽视的问题,因此,迁移是个大任务,有的时候迁移并不亚于开发一套新系统的难度,甚至可以说是有过之而无不及。哪些场景需要迁移我们总结了各种需要迁移的场景。字段迁移原来设计的字段大小不能满足现在业务的需求,直接在原表上扩容字段可能会影响线上跑的业务,因此,我们需要增加一个字段来替换原来的字段;字段的数据格式需要升级,通过新增字段来替换原有字段,例如:原有未加密的字段处于安全需求进行加密。表迁移用于数据库表设计重构的场景,原有表的结构不合理,新增合理的表来替换原有的表,这时候我们需要表迁移。数据库迁移把单库迁移到分库分表的多个库;从一种数据库迁移到另外一种数据库;分库分表的多个库需要扩容的时候,需要进行数据库迁移,迁移到一套能够容纳足够数据的数据库集群。

  • 阿琛
    阿琛
24 min read
iOS

【转】iOS开发技巧-国际化(Localization),只看一篇就够了

本文转载自:https://www.jianshu.com/p/f8edd7b7a217本文主要涉及iOS的国际化,网上虽然有很多相关的文章,但是仔细阅读下来感觉都不太全面,因此重开一篇总结,记录项目中遇到的所有要点,demo见最下方链接。1. App名称国际化2. 图片、文字国际化3. 强制默认显示某种语言4. 启动图国际化5. iOS10所需的权限配置国际化6. xib/storyboard国际化7. 总结1.App名称国际化非常简单地按步骤修改就可以了。PROJECT-Info-Localizations中点击下方的小“+”,添加需要添加的语言,本文中以简体中文和英文为例。(国际化的所有操作,都需要这一步作为前提。)添加以InfoPlist.string为名称的string文件。查到的资料都说需要名称一模一样才能使用,没试过其他的名字。选中新建好的InfoPlist.

  • 阿琛
    阿琛
11 min read
【GitLab】一些要记住的命令
大杂烩

【GitLab】一些要记住的命令

最近自己搭建了一个GitLab CE服务器,一些命令行需要记下来[官方配置文档](http://docs.gitlab.com/ce/) 配置文件路径/etc/gitlab/gitlab.rb配置文件修改之后要执行下面语句才能生效sudo gitlab-ctl reconfigure启动gitlab所有组件sudo gitlab-ctl start停止gitlab所有组件sudo gitlab-ctl stop重启gitab所有组件sudo gitlab-ctl restartPostgreSQLhttp://docs.gitlab.com/omnibus/settings/database.html进入dbsudo gitlab-rails dbconsoleGitLab恢复备份说明

  • 阿琛
    阿琛
1 min read
【转】【Git】Git入门教程
Git

【转】【Git】Git入门教程

(注:本文转自Git入门教程)创建新仓库:用git init在当前目录建立本地新仓库用git clone url在当前目录克隆一个远端仓库添加用户名及邮箱有两种方式方式一:编辑.git/config[user] name = email = 方式二:使用命令行 git config --global user.name "xxxxxx" git config --global user.email "xxxxxxx" (备注:--global表示添加到全局配置中,全局配置在~/.gitconfig中, 如果不加--global,就只会修改当前目录下.

  • 阿琛
    阿琛
4 min read
iOS

【iOS】自制放大镜效果

一、在iOS的某些系统控件中(例如:UITextView、UIWebView),自带有放大镜效果,就是长按住某些文字,然后就会弹出一个放大框显示放大后的文字。例如下面是系统的效果二、下面我们来自己实现这个效果实现的思路,简单来说就是 1.在touchesBegan和touchesMoved中截取整个屏幕生成UIImage A 2.根据touch点的坐标从图片A中截取对应部分生成图片B(使用CGImageCreateWithImageInRect方法) 3.将B放到一个UIImageView展示到keyWindows中,根据touch点的坐标来计算UIImageView显示的位置 4.最后在touchesEnded里面记得隐藏UIImageView。 下面的是实现后的效果最后附上Demo代码地址 2016.4.17放大镜Demo

  • 阿琛
    阿琛
1 min read
iOS

【iOS动画】彩蛋

最近闲来无聊在 关于页面中 留了个彩蛋,隐藏了一个动画在其中。动画使用了JHChainableAnimations库该库使用链式语法调用,非常简介明了,而且支持缓动函数,对于做一些模拟重力,弹簧等运动非常有用缓动函数:指定动画效果在执行时的速度,使其看起来更加真实。现实物体照着一定节奏移动,并不是一开始就移动很快的。当我们打开抽屉时,首先会让它加速,然后慢下来。当某个东西往下掉时,首先是越掉越快,撞到地上后回弹,最终才又碰触地板。以下就是缓动函数

  • 阿琛
    阿琛
1 min read
【转】【前端缓存】H5 缓存机制浅析 - 移动端 Web 加载性能优化
前端

【转】【前端缓存】H5 缓存机制浅析 - 移动端 Web 加载性能优化

本文转载自:H5 缓存机制浅析 - 移动端 Web 加载性能优化1. H5 缓存机制介绍H5,即 HTML5,是新一代的 HTML 标准,加入很多新的特性。离线存储(也可称为缓存机制)是其中一个非常重要的特性。H5 引入的离线存储,这意味着 web 应用可进行缓存,并可在没有因特网连接时进行访问。H5 应用程序缓存为应用带来三个优势:离线浏览 用户可在应用离线时使用它们速度 已缓存资源加载得更快减少服务器负载 浏览器将只从服务器下载更新过或更改过的资源。根据标准,到目前为止,H5

  • 阿琛
    阿琛
33 min read
【转】【前端缓存】变态的静态资源缓存与更新
前端

【转】【前端缓存】变态的静态资源缓存与更新

原文转自前端农民工 这是一个非常有趣的 非主流前端领域,这个领域要探索的是如何用工程手段解决前端开发和部署优化的综合问题,入行到现在一直在学习和实践中。 在我的印象中,facebook是这个领域的鼻祖,有兴趣、有梯子的同学可以去看看facebook的页面源代码,体会一下什么叫工程化。 接下来,我想从原理展开讲述,多图,较长,希望能有耐心看完

  • 阿琛
    阿琛
11 min read
SVN

【SVN】记录一下在Ubuntu下的SVN服务器的搭建过程

今天自己在Ubuntu下搭建了一个SVN服务器,方便以后可以远程管理代码特此记录了一下搭建的过程1. 通过apt-get安装subversionsudo apt-get install subversion如果安装出错(例如某个包找不到),请先更新本地仓库数据,更新完成后再执行上面的命令重新安装sudo apt-get update2.找个目录当做SVN的根目录(目录地址随意)在home目录下创建一个名为svn的文件夹(文件夹的名字随便起)mkdir /home/svn3.创建数据仓库(可以根据需要创建多个)此处我新建了一个叫ZYQ的仓库sudo svnadmin create /home/svn/ZYQ4.进入版本库查看生成的相关文件依次执行以下命令cd /home/svn/ZYQ ls 会看到ZYQ目录下面自动生成了一些目录和文件conf db

  • 阿琛
    阿琛
2 min read
iOS

【iOS】 重命名项目名称需要注意的事情

今天要把某个工程的名称给重命名一下,折腾了一下午。特此记录了一下重命名的步骤和流程 ,以备以后不时之需。修改之前切记一定要将原始工程备份!!!一定要将原始工程备份!!!!一定要将原始工程备份!!!!!一、第一步:修改Project的名称先照着下面的网址步骤 把project的名称改了iOS项目的Project重命名方法图文教程iOS项目的Project重命名方法图文教程注意:如果项目没有使用CocoaPods来管理,恭喜你,你可以直接略过以下步骤了二、第二步:修改workspace的名称(CocoaPods)按照上面的教程做完之后再 pod install 一下  把原来的xxx.xcworkspace文件删了,因为 pod install后会新生成一个用新名字命名的.xcworkspace文件.==如果跑起来了,那么恭喜你,你已经改名成功了。 ==如果还是跑不起来 (一般都是遇到这种第三方库自己有.a文件的情况)

  • 阿琛
    阿琛
2 min read

网站备案号: 粤ICP备15072858号