首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

:李善友《第二曲线创新》

如何能让企业“长寿”,让企业保持青春,这就要需要考虑创新问题;但创新往往又会陷入到“创新早死,不创新等死”的窘境。这里就带来一种重要的思维模型“第二曲线创新”。...就如同当年在功能机市场如日中天的诺基亚,当行业发生变化(智能机时代)时,也会变得毫无还手之力。 2). 识别“破局点” 当我们在做第二曲线发展布局时,从何处下手是个核心问题。...分形创新,不是实际创造出一个新的曲线,而是在第一曲线的某个子领域(某个可能性)注入创新,并使之成长为完整的第二曲线。...最终达到单一要素的最大化,使之成长为完整的第二曲线。 3). 战略杠杆(“四个一”模型) 给我一个杠杆,能解决一切。战略杠杆,抓住战略的核心问题,可简约为“真北”问题,即是个真问题并是可执行的。...错位竞争 这里很经典的话“与其更好,不如不同”,我之前也谈到过差异化竞争问题。与在位企业错位竞争很重要,特别是对于创业企业。跟随策略,成功率往往很低。

1.8K20
您找到你想要的搜索结果了吗?
是的
没有找到

群聊消息“已”“未功能解决方案!

一朋友和我讨论他前段时间面试某大公司的一题目: 企业IM比如企业微信、钉钉里面的群消息的有个已功能,发送者刚发出消息时,当前群里其他群成员都是未状态,陆陆续续有人看了这个消息,这时候消息的详情变成...x人已,y人未,如下图所示,有具体的已列表(万恶的功能,看到同事or老板的消息不能假装没看到了),每条消息对应一个唯一的messageid(uint64_t),每个用户对应一个唯一的userid...(uint64_t),应该如何保存这个消息对应的已详情呢?...仔细分析,按照目前的设计,每一条消息,已详情就要占用8B * 群成员数的内存,如果一个活跃的200人大群,每发一条消息,已就要1600B,如果平均每天消息量是1k,那每个这样的群,每天就要1.6MB...增加自增mapid字段,一个群聊维护一份,成本几乎可以忽略不计 每个成员已由8B(64bit)优化成2bit,减少62/64, 200人已旧的方案1600B, 现在只需要(200/8) *

3.1K10

RR有幻问题吗?MVCC能否解决幻

这样,其他事务在读取数据时仍然可以访问到旧版本的数据,从而避免了幻问题。...在 MySQL 中,即使是RR 隔离级别(可重复读),虽然它通过 MVCC 消除了绝大部分幻问题,但依旧存在部分幻问题,所以 RR 隔离级别存在幻问题,而 MVCC 也没有彻底解决幻问题。...幻问题演示 在 RR 隔离级别中存在两种操作: 快照读:数据库中一种读取数据的方式,它基于事务开始时的一个一致性快照来读取数据。...所以,在 RR 隔离级别中 MVCC 通过快照读的方式解决了大部分幻问题,但如果 RR 隔离级别存在当前(使用 select ... for update 实现),那么此时也会发生幻问题,比如以下执行过程...小结在可重复读级别中,MySQL 虽然使用 MVCC 解决了大部分幻问题,但在当前的操作中依然有幻问题,此时可以通过加锁,或升级隔离级别为串行化来解决幻问题

17710

RR有幻问题吗?MVCC能否解决幻

这样,其他事务在读取数据时仍然可以访问到旧版本的数据,从而避免了幻问题。...在 MySQL 中,即使是RR 隔离级别(可重复读),虽然它通过 MVCC 消除了绝大部分幻问题,但依旧存在部分幻问题,所以 RR 隔离级别存在幻问题,而 MVCC 也没有彻底解决幻问题。...幻问题演示 在 RR 隔离级别中存在两种操作: 快照读:数据库中一种读取数据的方式,它基于事务开始时的一个一致性快照来读取数据。...所以,在 RR 隔离级别中 MVCC 通过快照读的方式解决了大部分幻问题,但如果 RR 隔离级别存在当前(使用 select ... for update 实现),那么此时也会发生幻问题,比如以下执行过程...小结 在可重复读级别中,MySQL 虽然使用 MVCC 解决了大部分幻问题,但在当前的操作中依然有幻问题,此时可以通过加锁,或升级隔离级别为串行化来解决幻问题

50430

MySQL如何解决幻问题

//MySQL如何解决幻问题?...方案二:读写操作都采用加锁的方式 在银行支付等场景下,不允许读取记录的历史版本,只允许看到记录的最新版本,此时操作和写操作都需要加锁,其实,要解决幻问题,只添加记录锁于事无补,因为幻的记录在第一次读取之前是不存在的...为了解决这个问题,MySQL引入了间隙锁,间隙锁的引入,阻止了其他会话在指定的间隙插入相关记录,也就解决了幻问题。...两种方案对比: 如果采用MVCC方式的话,只能解决一致性非锁定(也称之为快照读)的幻问题-写操作彼此并不冲突,并发性能更高; 如果采用加锁方式的话,可以解决当前的幻情况,-写操作彼此需要排队执行...,影响性能; 一般情况下我们当然愿意采用MVCC来解决-写操作并发执行的问题,但在银行业务等特殊场景下,还是需要锁来解决的。

1.4K10

IM热门功能讨论:为什么微信里没有消息“已功能

1、引言 张小龙说:微信消息不做“已”和“未”的功能,是因为要给人撒谎的机会,这才符合人性。 真的对吗? 关于这个问题……对,也不对。...▲ 市面上有很多IM提供了已功能,上图从上至下分别为:钉钉、易信、旺旺(千牛) (上图引用自文章《IM群聊消息的已回执功能该怎么实现?》)...▲ 阿里旺旺的PC端消息“已功能 换句话说:聊天消息的“已”和“未”状态在什么情况下该做呢? 这是一个典型的功能分析,遇到这种分析,我们应该如何用产品思维入手呢?...3.1 第一步:结构性思维 很多人遇到这种问题,不自觉地就从定位、场景、产品理念、用户体验等很多个角度来分析了,其实这就是结构性思维。 结构性思维就是:需要从不同角度,全面、透彻的看待一个问题。...“已功能?》

1K30

【MySQL】MySQL事务的问题:脏、幻、不可重复读

MySQL事务的问题:脏、幻、不可重复读 在上一篇文章中,我们已经学习过了事务相关的基础知识,今天,我们继续学习事务有可能带来的一些问题。...-- my.cnf [server] transaction-isolation = READ-UNCOMMITTED 脏的意思就是两个事务同时在运行,其中 A 事务修改了某个字段,B 事务读取了这个字段...很明显,这就产生了问题,这个就是脏带来的结果,一致性出现了问题。 不可重复读 不可重复读是啥意思呢?...最后一个幻,其实它和前面两个问题的情况也是类似的,都是读取的不一致问题,并且和不可重复读非常类似。...总结 好了,问题呈现在眼前了,其实大家应该能看出,事务常见的这三个问题都和数据的一致性读取有关,也就是说,在多个并发事务的前提下,如何保证数据的并发一致性就是我们要面对的问题

8210

IM热门功能讨论:为什么微信里没有消息“已功能

1、引言 张小龙说:微信消息不做“已”和“未”的功能,是因为要给人撒谎的机会,这才符合人性。 真的对吗? 关于这个问题……对,也不对。 ? ? ?...▲ 市面上有很多IM提供了已功能,上图从左至右分别为:钉钉、易信、旺旺(千牛) (上图引用自文章《IM群聊消息的已回执功能该怎么实现?》)...3、为何其它IM里会有这个功能? 为什么淘宝就有这个功能呢? ? ▲ 阿里旺旺的PC端消息“已功能 换句话说:聊天消息的“已”和“未”状态在什么情况下该做呢?...3.1 第一步:结构性思维 很多人遇到这种问题,不自觉地就从定位、场景、产品理念、用户体验等很多个角度来分析了,其实这就是结构性思维。 结构性思维就是:需要从不同角度,全面、透彻的看待一个问题。...▲ “抢红包”的牛X之处在于:居然能让面对面的两个人使用IM却不觉乏味 5、补充 本文是从产品角度讨论微信中的消息“已功能,如果您对消息“已功能的理论和技术实现有兴趣,可以进一步阅读《IM群聊消息的已回执功能该怎么实现

1.2K20

LeetCode动画 | 218.天际线问题

今天分享一个LeetCode题,题号是218,标题是天际线问题,题目标签是线段树和Line Sweep [ 扫描线算法 ] ,题目难度是困难。...最近新学了Go语言,来尝试一下效果,同时后面也贴出了Java代码【线段树和线扫描】。 题目描述 城市的天际线是从远处观看该城市中所有建筑物形成的轮廓的外部轮廓。...请注意,最右侧建筑物的最后一个关键点仅用于标记天际线的终点,并始终为零高度。此外,任何两个相邻建筑物之间的地面都应被视为天际线轮廓的一部分。...输出天际线中不得有连续的相同高度的水平线。例如 [...[2 3], [4 5], [7 5], [11 5], [12 7]...]...题目已经将天际线定义为水平线左端点的集合,如[[2 9 10]]关键点集合为[[2 10] [9 0]],分别是一个建筑物上的左上端点和右下端点。

1K10

线法处理最大子矩阵问题

线法思想及实现 若在一个矩形区域内寻找满足某条件的最大子矩阵。 悬线,就是一个竖线,这个竖线可以理解为一个具有端点坐标(x,y)、长度L概念的线段。...但是,现在需要处理一个问题,如何知道从(x,y)向上出发的最长悬线,向左、右各自最长能平移多远。原来L、R中记录的是从某点向左、右方向满足条件的线段的最长长度,并不是悬线的平移长度。...而黄色虚线部分则是标记出了,悬线能平移的最远距离。(x,y)对应悬线左移的最远距离取决于以该悬线为轴,所有向左能到达的最远距离中最短的距离。...那么我们可以将L[x][y] 更新为从(x,y)位置向左,悬线能平移的最长距离。 图片 对应的,R[x][y]也更新为(x,y)位置向右,悬线能平移的最长距离。...从该点位置向右,悬线能平移的最长距离 由以上的三个信息就能确定由该悬线扫过的区域组成的矩形面积: 图片 整体时间复杂度为O(N×M) 模板例题 玉蟾宫 题解 棋盘制作 题解 Q.E.D.

41410

WPF 解决 ViewBox 不显示线问题

ViewBox 是一个好用的东西,但是在他缩小的时候,可能有一些线无法显示。 现在公司项目就是做一个类似 ppt 的软件,所以需要使用缩略图,而对于矩形形状,在缩略图,经常看不到线。...因为 ViewBox 和 visualBrush 都使用 邻近算法 所以 ViewBox 和 visualBrush 都存在丢失线问题。 本文提供一个算法,解决 单线条在WPF不显示问题。...1像素线段在WPF不显示问题。ViewBox 缩小失去线段问题。...可以看到存在线条不显示,但是在移动矩形过程中,有些线就显示了,于是看起来图形在闪烁,这个设计不好。 当然为了显示矩形,我需要使用 VisualBrush 。...size.Width / width, size.Height / height)); } 输入你需要转换的控件,输入转换后的大小,得到一个图片 于是大概就是 VisualBrush 的功能

1.4K10

WPF 解决 ViewBox 不显示线问题

ViewBox 是一个好用的东西,但是在他缩小的时候,可能有一些线无法显示。 现在公司项目就是做一个类似 ppt 的软件,所以需要使用缩略图,而对于矩形形状,在缩略图,经常看不到线。...因为 ViewBox 和 visualBrush 都使用 邻近算法 所以 ViewBox 和 visualBrush 都存在丢失线问题。 本文提供一个算法,解决 单线条在WPF不显示问题。...1像素线段在WPF不显示问题。ViewBox 缩小失去线段问题。...可以看到存在线条不显示,但是在移动矩形过程中,有些线就显示了,于是看起来图形在闪烁,这个设计不好。 当然为了显示矩形,我需要使用 VisualBrush 。...size.Width / width, size.Height / height)); } 输入你需要转换的控件,输入转换后的大小,得到一个图片 于是大概就是 VisualBrush 的功能

61620

Hibernate中的事务隔离问题(脏、不可重复读、幻

Hibernate中的事务隔离问题(脏、不可重复读、幻) 1.事务的特性 事务的四个特性: 1)原子性:事务是进行数据库操作的最小单位,所以组成事务的各种操作是不可分割的 2)一致性:组成事务的各种操作...其中有一个失败,事务无法完成 3)隔离性:在并发中,每个事务都是独立的 4)持久性:这是结果,表示在事务提交之后,数据将持久的保存到数据库 2.事务的隔离问题 事务的三个隔离问题: 1)脏:一个事务读到了另一个事务还没提交的数据...a时,就得到了两个不同的结果 3)幻:像发生了幻觉一样的操作 如:A事务在对一个表中的全部数据进行修改时,B事务向表中插入了一条新的数据,当A事务提交之后,你会发现还有一条数据(就是B事务新增的数据)...这就像发生了幻觉一样 3.事务的隔离级别 1) Serializable (串行化):可避免脏、不可重复读、幻 2) Repeatable read (可重复读):可避免脏、不可重复读 3) Read...committed (已提交):可避免脏 4) Read uncommitted (未提交):最低级别,任何情况都无法保证

85220
领券