[返回] [最新] [最热门] [最高评价]

MySQL Alter Table锁表相关的....提纲?

(瞅一眼才发现四个月没写了,确实是好久没写代码了,没啥心得,不过想想好像可以写个提纲凑个数)

我们的业务主要还是用 MySQL 存储业务数据。

MySQL 一个很麻烦的问题是,alter table 的时候往往要锁表,而业务在最初设计的时候,又没法为未来的所有改动预留合适的字段,结果就是,要么另外建一张表横向扩展,要么熬到半夜,忍受锁表带来的业务中断;不过在多次实践中还是有一些心得体会,可以简
...

Felix021 2017-09-22 00:07 | 查看: 104

Direct3D12 的接口设计 bug

昨天被 D3D12 的一个 bug 坑了一晚上,这个问题很值得一写。

最初是发现 LUID ID3D12Device::GetAdapterLuid() 这个函数有问题。我用 mingw64 gcc 编译后的程序,只要调用了一个 api ,d3d12device 设备对象的虚函数表就被破坏掉了。下一次对这个设备的任何 api 调用都会 crash 掉。

由于这个函数的实现在 d3d12.dll
...

云风 2017-09-21 12:16 | 查看: 206

你需要了解的 Swift 4 新东西之 Substring

Swift 4 正式版已经随着 iOS 11 和 Xcode 9 的发布而发布了。

这是一个值得受好评的版本,很重要的一点是,它改变了 Swift 被人吐槽最多的一个问题:每个版本因为不兼容的问题,都要重写。Swift 4 有着 Swift 3 语法兼容模式,这意味着你不用改一行代码,就可以在 Xcode 编译通过。这对大型 iOS 项目而已非常重要:我们可以在未来的一年从一个 Target、一
...

图拉鼎 2017-09-20 21:01 | 查看: 147

关于 iOS 11 GM 及正式版可能存在几个小问题

还有几个小时,iOS 11 正式版就要发布了。而在前天,我却从 iOS 11 GM 降级回了 iOS 10。这是我用 iOS 系统七年以来,第一次因为 GM 用的不愉快而回到旧系统。这篇文章,我想谈谈对 iOS 11 的一些看法。

我是在 Apple 发布会结束后的那天,把自己的 iPhone 6s 更新到 iOS 11 GM 的。更新的形式用的是备份原手机,下载 iOS 11 GM 的 ROM
...

图拉鼎 2017-09-19 20:57 | 查看: 199

一个关于 nolock 的故事

加入沪江不久,我就被扔到一个将集团 SQL Sever 的数据库迁移到 MySQL 的项目里,
同时伴随进行的还有 .net 系统迁移到 Java 系统。
在这个过程中我发现了一个很有趣的现象:历史遗留的 .net 项目中,
几乎所有的 SQL 中都会使用一个关键字:nolock。
这让我很困惑,nolock 的字面意思是对当前技术不使用锁技术,为什么要这样用呢?

我找了一个范例如下:

SEL
...

alswl 2017-09-19 16:43 | 查看: 224

关于Facebook 的 React 专利许可证

随着Apache、百度、Wordpress都在和Facebook的React.js以及其专利许可证划清界限,似乎大家又在讨论Facebook的这个BSD+PATENT的许可证问题了。这让我想起了之前在Medium读过的一篇文章——《React, Facebook, and the Revocable Patent License, Why It’s a Paper》,我觉得那篇文章写的
...

陈皓 2017-09-19 14:08 | 查看: 213

小程序技术方案探讨

微信小程序上线大半年,大部分技术原理也有文章介绍了,本文尝试从需求出发探讨微信小程序技术方案的来源,以及最近公测的支付宝小程序技术方案的考量。

微信小程序

微信小程序的需求是让第三方开发者可以接入,可以使用微信的提供的接口去开发应用嵌入在微信里。对于这个需求,最简单的实现方案是:让外部开发者开发纯H5应用,在微信的 H5 容器里打开,容器提供微信 native 接口,就行了。在有小程序之前,已
...

bang 2017-09-19 11:48 | 查看: 216

《ES6 标准入门(第3版)》上市了!

2017年6月,TC39 委员会正式发布了《ES2017 标准》。

相比两年前,JavaScript 语法有了很大的升级,主要是引入了 async 函数和 decorator。这让我觉得,《ES6 标准入门》必须要出新版,否则就跟不上形势了。

电子工业出版社的张春雨编辑很支持我的想法,最快时间投入出版社的资源;孙奇俏编辑连续几周都忙于校对排版。7月初我交稿,8月底送印刷厂,9月中旬《ES6 标
...

阮一峰 2017-09-19 07:06 | 查看: 177

从 iPhone 6 来谈 iPhone X 的「刘海」(附购买建议)

Apple Special Event 结束已经快一周了,我的情绪也慢慢地稳定了下来:从刚开始的「失望」,到现在的肯定和充满「期望」。先从我的「失望」说起。

对 iPhone X 的「失望」

看完发布会的时候,我在社交网络上吐槽了好几天,表达对了 Apple 连连的「失望」。这个「失望」很大程度上来自我对「泄漏」的失望,关于 Apple 发布会的信息,竟然泄露的一干二净,没有一点保留,这是其一
...

图拉鼎 2017-09-18 19:58 | 查看: 200

使用标准方式在 Ubuntu 16.04 下启用 TCP 拥塞控制之 BBR

我是这 Ubuntu Server 系列文章的第二篇,讲讲如何在 Ubuntu 16.04 LTS 下通过最标准的方式启用 TCP 拥塞控制之 BBR。

BBR 简介

BBR 是 Google 推出的一个「TCP 拥塞控制算法」,它是以 Linux 内核模块的形式加载,可以最大化 Linux Server 的网络吞吐量。

简单地说,开启 BBR 的 Linux Server 和不开启 BBR
...

图拉鼎 2017-09-17 11:36 | 查看: 238

为 iOS 11 适配工具栏(UIToolbar)一例

升级到 iOS 11,你可能会发现你的 App 的工具栏的行为出了点异常。比如奇点,我在使用过程中,发现工具栏时灵时不灵,感觉很难点到。这是怎么回事?通过 Xcode 的 Debug View Hierarchy 功能,我发现了问题所在:

注意看下图,ToolBar 里面的按钮的矩形可触模区域非常小,紧贴着图片。这就是为什么点击时灵时不灵的原因。

当我还在用 Xcode 8 + iOS 10
...

图拉鼎 2017-09-15 23:15 | 查看: 299

我的 Ubuntu Server Setup:基础篇

用 Ubuntu 有十年多了,近几年有什么项目需要用到 Server 的,基本上也都是直接用 Ubuntu,原因无它,熟悉+社区支持度。

每次去新设定一个 Ubuntu Server 的时候,总会做一些重复的动作,怪麻烦的。今天我就整理这么一篇《我的 Ubuntu Server Setup》,列一个我开启 Ubuntu Server 必做的一些操作。当然因为不同的云厂商提供的默认环境不一样,有些
...

图拉鼎 2017-09-14 23:12 | 查看: 396

...更多...