20171127-03问题整理

总摘要: 解耦. 接口降低. 架构.


2017-11-27

  • 摘要: 解耦. 接口降低. 架构.
1.为什么说解耦的战术,决定了架构的高度?[成都-梅小西]

北京-喜<-> 15:16:00
理论上 确定是解耦的能力 等于架构的高度。 但是不是他列举的那些解耦例子, 今天终于刚刚梳理下,总共3个方面.
北京-喜<-> 15:17:15
1:端对端的交互方式 2:端内的应用架构 3:数据架构。 3种都涉及解耦和协作. 端对端的交互方式:本质上是3种。 (通常说的事件驱动、ACTOR、工作流、分层架构、甚至是同步命令,都是这一层的)。 3种本质是啥自己总结吧. 端内的应用架构:比如DDD、ACOTR、内部分层涉及、一些执行框架,都属于这一层.
北京-coder-在线教育(-) 15:20:38
数据架构,就是大数据了呗
北京-喜<-> 15:20:57
简单说:数据视图和计算, 比如CQRS、大数据、多维异构数据等.
广州-小护士<-> 15:22:28
AWS Lambda 服务属于端对端还是数据架构?
北京-Easy哥(-) 15:24:39
这个 覆盖面太广了 甚至是一种 反命令式架构设计方案
广州-小护士<-> 15:25:09
反命令式架构是什么?我就是很疑惑 函数运算到底是哪种。。
北京-Easy哥(-) 15:25:50
我们平时 提的各种设计方案 都是基于命令式这个前提 , 也是现在 计算机设计的基本方式 , 但是 当年 设计计算机的时候 可不只这一个方案 , 还有一种 就是所谓 函数式设计 函数式设计的好处 就是 命令式设计要追求的那些东西 . 近些年 随着 云端应用的兴起 简单的单服务应用 被提上了新高度. 所以 业界又开始搞一些鬼 发现 我擦 函数式设计有好多东西 很符合我的要求啊. 所以 就拿来 鼓捣鼓捣 组合出一个名词 FAAS.然后 有了这个名词 亚马逊作为云世界领军人 自然要出个产品 .曰 Lambda架构
南京-wyy(-) 15:28:54
关键在于计算能力的提高吧,函数式重新流行起来
北京-Easy哥(-) 15:29:52
关键在于 现在的系统 复杂度 到了 不能单纯用命令式设计模式解决的地步了, 所以 要解决复杂度 需要一些特殊思考方式 , 函数式的优势 能够补充 命令式的短板
北京-喜<-> 15:29:54
类似视角的问题,有中心和无中心
杭州-光明消逝(-) 15:31:11
简单看了下faas,这在设计中,就是根据事件写很多的ifelse
北京-Easy哥(-) 15:31:33
这本身就是错的, 都已经是faas了 目的是消除 if else 和 循环. 函数式 更省资源,因为 函数式对内存的需求是最低的.
北京-喜<-> 15:35:40
函数式 和 所见即所得有一定冲突
南京-wyy(-) 15:34:53
@北京-Easy哥 那为啥一直是命令式大行其道呢?
北京-Easy哥(-) 15:35:44
那是因为 冯诺依曼依据命令式设计的计算机 所以 很长一段时间 函数式设计被认为是 邪教.命令式设计 或者说 图灵机 是因为 图灵不但提出了计算方式 而且 给出了工程上的设计 . 图灵他老师 邱奇 把这玩意 弄成了数学的分支, 由此可见 工程素质多么重要, 这是因为 这几十年 大家的学习的路子都是命令式的
北京-喜<-> 15:37:48
复杂度不断上升后,函数式在整体业务上理解成本会上升, 也许是因为函数式没发展起来,对应理论和方法 没普及. 另外一个就是 函数式没有 基础设施
北京-Easy哥(-) 15:40:37
函数式语言的意思是 在命令式设计的机器上跑函数式计算 自然要多消耗转化的成本

2. 接口降级有什么资料吗? [深圳-Mt]

北京-jax(-) 18:04:29
得看你们用的框架,springcloud hystrix
深圳-Mt<-> 18:06:29
我去看看hystrix 的实现吧
广州-小护士<-> 18:08:32
hystrix的实现跟降级本身无关, hystrix 里面只是一个有限状态机, 开,半开,关闭状态, 定时轮询+状态变换,没了. 降级是具体业务上的事情, 我的意思是,做降级不一定非要用 Hystrix 啊.
广州-Ryan(-) 18:14:59
去枝叶保主干呃,接口的边角逻辑直接干掉,主干逻辑保留。
接口自身做好过载保护,强依赖下游做好调用熔断和自动恢复。
就是保证自己不挂,也保证不要搞挂别人。
广州-Galen(-) 18:16:31
这样子接口规范就要做得很明确了吧?上游接口这样做,问题应该不大,下游接口考虑的点也很多。
广州-小护士<-> 18:17:53
接口设计得好不好,跟架构有直接关系~
广州-Ryan(-) 18:20:39
接口规范这个是需要保证的,不过和降级关系不大。
要做成自动化,就得在 逻辑前后加一些东西,比如 A | B | C,B是你的接口,A是进入你接口前,你可以根据一定规则拒绝,达到过载保护。
B就是你的下游,同理。
广州-Galen(-) 18:24:18
其实这么说,上游要搞好过载保护,下游要搞好熔断和恢复。和你上句说的同理,这些可以抽闲到框架里面实现部分吧?不然都依赖程序员自己去搞,会有点不可靠。
广州-Ryan(-) 18:25:21
嗯,做个小工具,你依赖hystrix我理解也是类似的东西。
广州-小护士<-> 18:26:36
所以就出现了 Service Mesh 架构。。就是为了解决你们两刚才说的问题.

3. [讨论]具备架构师头衔的人并不一定是架构师<聊聊架构[书]>.

北京-喜<-> 20:51:08
架构师拿结果比较难,因素多而复杂。 所以做偏C架构的居多,是因为这部分可以通过量化和抓手验证。只做偏C的部分,算不算架构师呢,见仁见智这个.
深圳-平凡(-) 21:51:46
c架构是什么?
北京-喜<-> 21:53:13
稳定性、可用性等主题有关
深圳-平凡(-) 22:01:09
我理解的架构是创建及维护软件结构体系的生命周期
北京-喜<-> 22:30:06
我理解架构是使得系统尽可能的不易变,建立稳固的关系, 稳定和不易变接近, 不管是熔断、降级,核心非核心梳理。还是一定程度的分层和多数据结构, 都是为了建设一个稳固的部分或关系, 其实是一段时间内看起来、处于某种稳固。稳固随着维护,可能会被打破.
深圳-平凡(-) 22:39:15
这个稳定性是架构原则吧。好比如设计模式6大原则,23种设计模式都是围绕着一到多种设计原则展开的。那是因为结构体系变了,所以需要重新完善这个结构体系。目标架构就是一个理想化的结构体系,你在从基线架构演进到目标架构过程中,演进路线很难一成不变。
北京-喜<-> 22:49:25
场景都有, 一种是原来的不稳定节点和场景解决了,次要问题上升. 一种是新业务加入, 一种是新依赖/链路加入, 链路和业务逻辑2个大方向, 偏C指的是链路部分, 平台化、中台化,指的是业务逻辑, 你可以先抛个你熟悉的架构模式或者方法论?
深圳-平凡(-) 23:01:57
稳定性在架构层面不属于原则,原则是偏落地了。应该属于架构愿景.
北京-喜<-> 23:03:02
终极目标基本是不存在的,这个是矛盾的
深圳-平凡(-) 23:03:49
在一定的时间 空间 范围内是存在的。
北京-喜<-> 23:03:54
终极目标假如达到了,说明业务场景/复杂度/流量等 是已可见的, 所以要加时间线, 如果业务场景/复杂度/流量等 是已可见的,那么用现有架构撑着也可以,就不必演进了
深圳-平凡(-) 23:05:01
就像国家的五年计划,国家每五年制定一次各行各业五年发展规划,指导行业五年内的落地。 时间 :五年 空间:特定行业
北京-喜<-> 23:05:31
是的, 所以都会讲历史、现在、未来,3个时窗, 未来 一般不会超过3年, 比如我一直很倾向面向对象和设计模式在:就是因为可以建立一个稳固关系接口、扩展点和伸缩能力。DDD同理。 这部分是单一应用内, 其他的架构理念和方法论,多是链路的,偏集成场景.
深圳-平凡(-) 23:11:50
链路怎么理解?
北京-喜<-> 23:11:59
服务化产生的, 多系统调用、协作. 服务化是为啥? 放在1个系统内有啥问题?
深圳-平凡(-) 23:16:32
复用企业IT资产
北京-喜<-> 23:17:28
是因为太易变了,达到不可控、不可预期的程度了
深圳-平凡(-) 23:18:04
说起服务化,想起西神下午发的 thomas erlSOA架构。微服务架构也是由SOA演化而来,而现在宣传的微服务架构很欠缺服务资产治理。 thmoas erl的书籍都是围绕着这个讲的
北京-喜<-> 23:19:37
服务化 是圈出来一个个边界。 多个服务协作。 代替原来的单应用. 对相同的1个业务操作,服务化之后的,比原本的稳固的多。 不再是那么易变. 我说的是1个应用 到 多应用的过程/背景. 服务化和集成 带入新的风险. 风险 就是不可空/难预期, 所有偏C架构(高性能除外)的部分,都是控制这个风险. 让链路看起来是稳固的.
广州-Galen(-) 23:23:40
链路长,维护成本高.

2017-11-28

  • 摘要: 无.

2017-11-29

  • 摘要: 无.
1. 你们用Redis的时候,都碰到哪些应用场景了?[上海-雪驹]

2017-11-30

  • 摘要: 敏感词过滤. 枚举. 秒杀.
1. im 过滤 一般都怎么做的, 比如说 QQ 有些词汇就发不出去, 这样的功能? [西咸-S]

广州-小护士<-> 10:17:54
正则+敏感词库
北京-喜<-> 10:18:52
我只知道用Trie树
广州-小护士<-> 10:20:47
匹配范围写大了,误杀就大了
西咸-S(-) 10:21:01
网上看的基本上都是基于 DFA 算法写的. 我在做操,你妈让我告诉你XX , 这个次理论上没问题~但是很多就误杀了.
广州-小护士<-> 10:22:10
DFA 有限状态机。。状态机那种是文法解析的思路。。玩得有点深.
杭州-beBetter(-) 10:22:53
是啊,Trie树比较快
北京-coder-在线教育(-) 10:23:02
误杀就误杀呗

2. 内存占用方面,这俩是哪个占用的大? [北京-C_C]

北京-Easy哥(-) 14:45:13
基本上没区别 ,个人推荐 用枚举
北京-C_C(-) 14:45:46
为啥, 我前老大是说能不用枚举就不用
北京-Easy哥(-) 14:45:57
代码洁癖 , 枚举好看一些 ,别听你老大的 , 枚举的话 jvm会有特殊的优化 尤其是在switch的时候. 另外hotspot会在比较的时候把枚举当int来比较, 所以, 通过switch来做分支处理的时候 比对象的比较快很多.不过 这个 可以不知道 但是。。。。枚举写的代码好看,这个也是很大的优势.
一些奇技淫巧不知道 没问题,但是怎么写代码好看, 这个更重要吧.
成都-勇(-) 14:49:53
单就那个图得话,枚举应该占内存大些.
北京-Easy哥(-) 14:50:26
差不多啊 因为 枚举编译后 和下面的是一样的,所以 内存上 没有啥优劣.
成都-勇(-) 14:56:19
枚举 的可读性,可扩展性更好,没有必要为了这么一点点内存牺牲它.
北京-Easy哥(-) 14:56:32
一般人我们说他们技术好 其实 是考察了 技术的广度和深度结合来说的 ,但是 还有一种技术好 是完完全全的技术深度 ,这样的人需要特殊的工作背景, 一般都是做底层组件的, 90%的技术人员 其实都是上面个 .
成都-勇(-) 14:59:44
有没有可能只有深度而没有广度,我感觉如果要足够深,感觉只专一门是不行得样。
北京-Easy哥(-) 15:01:19
这个广度是说 比如说 一个懂JVM技术 但是 他也懂数据库 也懂特殊的业务 也懂项目管理, 不是是只懂 JVM技术,但是编译原理,操作系统,网络就不懂了
成都-勇(-) 15:02:02
哦,明白了
北京-Easy哥(-) 15:02:04
因为这样的话, 他的jvm技术也一般, 就像说一个人精通java, 他至少要精通几门语言.

3. 这里介绍的,秒杀流程. [成都-梅小西]

北京-喜<-> 20:10:10
那不大家看到页面之后,都可以点击到“购买”走2的流程呢, 扯淡
成都-梅小西(-) 20:13:00
库存放缓存,用户下单,创建初始订单,发送修改库存的消息,接收消息,排队更新缓存, 貌似这流程, 更新缓存成功,修改订单状态
北京-喜<-> 20:14:08
流量都打给购买的服务了,然后只有一部分能秒杀成功。 前置没流量拦截, 部分能秒杀成功的依据是库存系统有没有库存。 也就是同样的流量从订单给了库存一份.
深圳-Mt<-> 20:24:29
秒杀不就一个redis Incr命令搞定吗, 限流, 保证应用和redis不挂
成都-梅小西(-) 20:26:45
我有个问题,压测的环境是线上环境的真实copy么
北京-Easy哥(-) 20:26:58
是的 真实copy
成都-梅小西(-) 20:27:38
db的数据量呢,难道一样?
北京-Easy哥(-) 20:27:51
影子库啊
北京-jax(-) 20:27:18
其实一直不明白压测怎么测?不要嫌弃我
杭州-东子(-) 20:31:28
首先并不是所有功能都要压测, 一般是新上的功能, 或者是影响分析做完了决定要压测的, 新系统来了或者新功能, 新系统就选择登陆退出和主要关键交易.

2017-12-01

  • 摘要: 令牌.
1. 问一下,令牌,你们用什么来实现?[中山-划船]

中山-划船(-) 14:32:49
redis?
成都-梅小西(-) 14:33:11
token? 不一定,数据库也可以啊
珠海-可乐<-> 14:34:14
你不是该问认证和授权用什么实现的?
中山-划船(-) 14:35:48
是限制访问量的
珠海-可乐<-> 14:36:30
那不是限流嘛, ratelimiter用redis或者guava,单机用guava也行,集群用redis

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

推荐阅读更多精彩内容