Ⅰ 股票流通股6.06亿 今天流入8个亿 为什么还开板了
流通股6.86亿,要看股票价格的,如果价格很高的股票的话,流入8个亿并不算多,关键是看股票价格以及具体什么原因导致出现上涨的。
Ⅱ 2020年二月份股市十四天涨12个板的股票是哪些
2月份的股市待14天涨了12个班,这些股票是特别的股票,他们。有的股票都是一种特殊的成方法。
Ⅲ 连续上涨3、4天,却没拉涨停,这种股票该怎么办
股市有风险,入市须谨慎。股票的事抓住机会自己决定。
Ⅳ 怎样隐藏手机股票交易记录
隐藏手机股票交易记录最好的办法是不让其他人知道交易软件的交易密码,不知道密码不能登陆交易软件,自然可以隐藏交易记录,其它没有办法!
Ⅳ 哪个机构网站的模拟股票操作比较好谢谢!
同花顺的网站模拟炒股不错,但是要学习做股票的话,还是建议实盘炒作。
Ⅵ 牧原股份股手机新浪网
自打2020年9月以后,猪肉板块就一直处于黑暗中,至今未见过曙光。每个持有猪肉股的股民都比较关注猪肉板块的行情走势。今天,就让我们来对牧原股份,也就是猪肉板块的龙头公司来做一个深入分析。
在开始分析牧原股份之前,我把整理好的养殖业行业龙头股名单给大家分享一下,感兴趣的朋友就打开链接领取吧:宝藏资料:养殖业龙头股一览表
一、从公司角度来看
公司介绍:公司业务重点就是生猪的养殖与销售,而商品猪、仔猪、种猪是目前该公司的主要产品,是中国最大的自育自繁、工业化、一体化生产的生猪养殖企业,公司已在生猪产业链垂直一体化布局方面专研多年。现公司产业链主要以生猪养殖为核心,集饲料加工、种猪育种、生猪养殖、屠宰加工等于一体的综合型现代化企业集团,是我国猪业企业中的领导者。
简单介绍了牧原股份的公司情况后,我们来看下牧原股份公司有什么亮点,有没有投资的必要?
亮点一:一体化产业链优势
一体化产业链使得公司将各个生产环节置于可控状态,在食品安全、疫病防控、成本控制及标准化、规模化、集约化等方面具备明显的竞争优势。拥有一条集饲料加工、生猪育种、种猪扩繁、商品猪饲养、生猪屠宰等多个环节于一体的完整生猪产业链,并拥有自动化水平较高的猪舍和饲喂系统、强大的生猪育种技术、独特的饲料配方技术。
亮点二:突出的地域、市场、生产管理以及人才等方面的优势
公司所在的地方粮食盛产,因此饲料成本较低;在行业以及市场上的认可度和知名度也不低;主要是引进人才和研发技术,具备扎实的生产管理和一支强大的技术人才队伍等,由此使本公司在疫病防控、产品质量控制、规模化经营、生产成本控制等方面拥有明显的竞争优势。
篇幅受限制,牧原股份相关的更多深度报告和风险提示,建议看看这份研报,大家看完这个链接就明白了:【深度研报】牧原股份点评,建议收藏!
二、从行业角度来看
猪肉养殖业是具备永续经营的性质,行业的需求随着国民经济水平和生活水平的提高,是不断扩大的。牧原股份是这个行业的佼佼者,它在行业中占据的比例要比其他企业高,将会直接从消费需求的扩大中获益。而且行业市场集中度低,行业发展没到顶峰,发展空间大。
三、总结
总之一句话,牧原股份是猪业里的龙头老大,地位不可撼动,其在快速扩张之下还具备能力保持低成本,从基本面看不失为一家优秀的上市公司。看的比较长远一点,其股价跟行业周期存在挺强的相关性,投资者可以多留个心眼,静静的等着猪周期到达最底部,然后再进行配置。
但是文章会有迟延,假如各位对牧原股份的未来行情有好奇心,那就戳一戳链接,可以通过专业的投顾来诊股,看下牧原股份的估值如何:【免费】测一测牧原股份当前估值位置?
应答时间:2021-09-04,最新业务变化以文中链接内展示的数据为准,请点击查看
Ⅶ 求懂股票的大神解答,股票市场靠谱吗是不是一开始会赚点钱,然后慢慢的越投越多,最后被套牢然后亏本好
第一,股票市场没有靠不靠谱这个特性,区别只在于你懂不懂,你会不会。道理就和你会做菜可以应聘做厨师,不会做菜却做了厨师结果一样。
第二,股票不是赌博,如果你不懂,从一开始你就是赔钱的,根本不存在你说的过程。
第三,我给你粗略描述一下股票投资获利的方式。
首先是最无脑最不需要专业知识的价值投资,选择一只主力类型为国家队外资法人机构的长线趋势向上的大盘股,在净值比,市盈率,质利率处于每次历史股价底部区域的状态买入,这种左侧交易时间拉长一定赚钱。
然后是利用技术分析筹码分析知识针对游资私募牛散大户为主力的中小票的右侧交易模式,这种交易可以依靠正确的技术分析筹码分析大概率研判正确股价之后的走势,而小概率的错误可以用纪律操作保证0大赔,最多小赔出场,那么时间拉长,就是大赚+小赚+小赔的效率模式。
现在我这么空说你可能没感觉,举些实际例子给你看吧,都是股价发生变化事前我在网络知道的回答
Ⅷ 2020年2月9日买什么股票能挣钱
可以布局,周月线已经多头排列的股票,说明走势强劲,后市可期。
关注热点题材科技类,这仍是未来的大方向。
Ⅸ 4月份有哪些股票分红送配
根据交易所公告信息统计,2015年分红送配的A股公司有如下206家:
603998.SH 方盛制药 2015-04-17
603618.SH 杭电股份 2015-04-28
603399.SH 新华龙 2015-04-30
603288.SH 海天味业 2015-04-15
603169.SH 兰石重装 2015-04-24
603077.SH 和邦股份 2015-04-22
603017.SH 园区设计 2015-04-24
603006.SH 联明股份 2015-04-27
601688.SH 华泰证券 2015-04-30
601678.SH 滨化股份 2015-04-15
601369.SH 陕鼓动力 2015-04-30
601313.SH 江南嘉捷 2015-04-15
601010.SH 文峰股份 2015-04-10
600960.SH 渤海活塞 2015-04-14
600787.SH 中储股份 2015-04-30
600666.SH 奥瑞德 2015-04-21
600660.SH 福耀玻璃 2015-04-15
600637.SH 东方明珠 2015-04-14
600636.SH 三爱富 2015-04-30
600617.SH 国新能源 2015-04-20
600593.SH 大连圣亚 2015-04-09
600588.SH 用友网络 2015-04-30
600566.SH 济川药业 2015-04-07
600513.SH 联环药业 2015-04-02
600468.SH 百利电气 2015-04-23
600463.SH 空港股份 2015-04-23
600422.SH 昆药集团 2015-04-30
600398.SH 海澜之家 2015-04-30
600393.SH 东华实业 2015-04-23
600366.SH 宁波韵升 2015-04-28
600290.SH 华仪电气 2015-04-30
600201.SH 金宇集团 2015-04-22
600184.SH 光电股份 2015-04-23
600176.SH 中国巨石 2015-04-23
600168.SH 武汉控股 2015-04-30
600135.SH 乐凯胶片 2015-04-20
600114.SH 东睦股份 2015-04-21
600109.SH 国金证券 2015-04-23
600064.SH 南京高科 2015-04-29
600035.SH 楚天高速 2015-04-16
300419.SZ 浩丰科技 2015-04-24
300412.SZ 迦南科技 2015-04-23
300406.SZ 九强生物 2015-04-20
300403.SZ 地尔汉宇 2015-04-23
300396.SZ 迪瑞医疗 2015-04-23
300395.SZ 菲利华 2015-04-21
300392.SZ 腾信股份 2015-04-27
300390.SZ 天华超净 2015-04-16
300379.SZ 东方通 2015-04-16
300365.SZ 恒华科技 2015-04-22
300360.SZ 炬华科技 2015-04-28
300353.SZ 东土科技 2015-04-13
300351.SZ 永贵电器 2015-04-09
300345.SZ 红宇新材 2015-04-20
300338.SZ 开元仪器 2015-04-30
300328.SZ 宜安科技 2015-04-09
300316.SZ 晶盛机电 2015-04-23
300306.SZ 远方光电 2015-04-30
300303.SZ 聚飞光电 2015-04-24
300294.SZ 博雅生物 2015-04-07
300288.SZ 朗玛信息 2015-04-21
300283.SZ 温州宏丰 2015-04-30
300281.SZ 金明精机 2015-04-29
300271.SZ 华宇软件 2015-04-28
300267.SZ 尔康制药 2015-04-08
300255.SZ 常山药业 2015-04-30
300253.SZ 卫宁软件 2015-04-10
300244.SZ 迪安诊断 2015-04-29
300242.SZ 明家科技 2015-04-28
300239.SZ 东宝生物 2015-04-29
300238.SZ 冠昊生物 2015-04-16
300237.SZ 美晨科技 2015-04-14
300231.SZ 银信科技 2015-04-27
300227.SZ 光韵达 2015-04-24
300221.SZ 银禧科技 2015-04-28
300216.SZ 千山药机 2015-04-28
300207.SZ 欣旺达 2015-04-28
300204.SZ 舒泰神 2015-04-09
300199.SZ 翰宇药业 2015-04-14
300196.SZ 长海股份 2015-04-23
300195.SZ 长荣股份 2015-04-21
300194.SZ 福安药业 2015-04-29
300190.SZ 维尔利 2015-04-29
300184.SZ 力源信息 2015-04-22
300179.SZ 四方达 2015-04-10
300178.SZ 腾邦国际 2015-04-24
300172.SZ 中电环保 2015-04-15
300166.SZ 东方国信 2015-04-24
300165.SZ 天瑞仪器 2015-04-30
300146.SZ 汤臣倍健 2015-04-09
300142.SZ 沃森生物 2015-04-23
300139.SZ 福星晓程 2015-04-10
300134.SZ 大富科技 2015-04-08
300127.SZ 银河磁体 2015-04-14
300124.SZ 汇川技术 2015-04-22
300078.SZ 中瑞思创 2015-04-28
300074.SZ 华平股份 2015-04-22
300072.SZ 三聚环保 2015-04-30
300066.SZ 三川股份 2015-04-29
300055.SZ 万邦达 2015-04-07
300054.SZ 鼎龙股份 2015-04-16
300043.SZ 互动娱乐 2015-04-28
300039.SZ 上海凯宝 2015-04-30
300033.SZ 同花顺 2015-04-24
300027.SZ 华谊兄弟 2015-04-29
300025.SZ 华星创业 2015-04-21
300017.SZ 网宿科技 2015-04-22
300009.SZ 安科生物 2015-04-17
002727.SZ 一心堂 2015-04-09
002726.SZ 龙大肉食 2015-04-27
002717.SZ 岭南园林 2015-04-09
002706.SZ 良信电器 2015-04-30
002701.SZ 奥瑞金 2015-04-24
002700.SZ 新疆浩源 2015-04-30
002697.SZ 红旗连锁 2015-04-20
002685.SZ 华东重机 2015-04-23
002665.SZ 首航节能 2015-04-30
002664.SZ 信质电机 2015-04-23
002658.SZ 雪迪龙 2015-04-17
002652.SZ 扬子新材 2015-04-14
002637.SZ 赞宇科技 2015-04-30
002635.SZ 安洁科技 2015-04-24
002632.SZ 道明光学 2015-04-17
002631.SZ 德尔家居 2015-04-28
002616.SZ 长青集团 2015-04-30
002615.SZ 哈尔斯 2015-04-30
002601.SZ 佰利联 2015-04-24
002600.SZ 江粉磁材 2015-04-10
002597.SZ 金禾实业 2015-04-21
002595.SZ 豪迈科技 2015-04-10
002593.SZ 日上集团 2015-04-14
002563.SZ 森马服饰 2015-04-30
002561.SZ 徐家汇 2015-04-30
002559.SZ 亚威股份 2015-04-21
002540.SZ 亚太科技 2015-04-13
002529.SZ 海源机械 2015-04-21
002523.SZ 天桥起重 2015-04-20
002501.SZ 利源精制 2015-04-09
002494.SZ 华斯股份 2015-04-09
002487.SZ 大金重工 2015-04-08
002452.SZ 长高集团 2015-04-30
002449.SZ 国星光电 2015-04-29
002415.SZ 海康威视 2015-04-14
002409.SZ 雅克科技 2015-04-29
002407.SZ 多氟多 2015-04-27
002389.SZ 南洋科技 2015-04-29
002367.SZ 康力电梯 2015-04-29
002360.SZ 同德化工 2015-04-30
002357.SZ 富临运业 2015-04-08
002354.SZ 天神娱乐 2015-04-29
002349.SZ 精华制药 2015-04-10
002334.SZ 英威腾 2015-04-30
002326.SZ 永太科技 2015-04-29
002318.SZ 久立特材 2015-04-24
002317.SZ 众生药业 2015-04-16
002294.SZ 信立泰 2015-04-24
002285.SZ 世联行 2015-04-27
002284.SZ 亚太股份 2015-04-24
002282.SZ 博深工具 2015-04-10
002280.SZ 联络互动 2015-04-07
002273.SZ 水晶光电 2015-04-30
002268.SZ 卫士通 2015-04-15
002262.SZ 恩华药业 2015-04-08
002256.SZ 彩虹精化 2015-04-13
002252.SZ 上海莱士 2015-04-09
002237.SZ 恒邦股份 2015-04-16
002230.SZ 科大讯飞 2015-04-16
002216.SZ 三全食品 2015-04-28
002210.SZ 飞马国际 2015-04-16
002201.SZ 九鼎新材 2015-04-24
002178.SZ 延华智能 2015-04-08
002164.SZ 宁波东力 2015-04-13
002162.SZ 斯米克 2015-04-10
002154.SZ 报喜鸟 2015-04-30
002139.SZ 拓邦股份 2015-04-30
002138.SZ 顺络电子 2015-04-08
002131.SZ 利欧股份 2015-04-16
002130.SZ 沃尔核材 2015-04-07
002129.SZ 中环股份 2015-04-29
002117.SZ 东港股份 2015-04-21
002091.SZ 江苏国泰 2015-04-27
002080.SZ 中材科技 2015-04-29
002074.SZ 东源电器 2015-04-30
002050.SZ 三花股份 2015-04-21
002028.SZ 思源电气 2015-04-23
002014.SZ 永新股份 2015-04-15
000977.SZ 浪潮信息 2015-04-27
000965.SZ 天保基建 2015-04-21
000901.SZ 航天科技 2015-04-27
000885.SZ 同力水泥 2015-04-16
000860.SZ 顺鑫农业 2015-04-29
000810.SZ 创维数字 2015-04-27
000750.SZ 国海证券 2015-04-30
000690.SZ 宝新能源 2015-04-07
000661.SZ 长春高新 2015-04-28
000656.SZ 金科股份 2015-04-29
000639.SZ 西王食品 2015-04-27
000631.SZ 顺发恒业 2015-04-30
000559.SZ 万向钱潮 2015-04-29
000553.SZ 沙隆达A 2015-04-27
000540.SZ 中天城投 2015-04-01
000501.SZ 鄂武商A 2015-04-22
000333.SZ 美的集团 2015-04-30
000100.SZ TCL集团 2015-04-09
000049.SZ 德赛电池 2015-04-28
000001.SZ 平安银行 2015-04-13
Ⅹ 如何通过雪球查询股票之前的变动状况
一. 雪球公司介绍
雪球 聪明的投资者都在这里。
web 1.0:新闻资讯,股价信息,K线图
web 2.0:SNS 订阅,分享,聊天
web 3.0:移动 APP,交易闭环
雪球现在员工数还不到100,其中技术人员占一半。去年9月C轮融资4kw刀。我们现在的技术栈由下列组件组成:Java,Scala,Akka,Finagle,Nodejs,Docker ,Hadoop。我们当前是租用IDC机房自建私有云,正在往“公私混合云”方向发展。
在雪球上,用户可以获取沪深港美2w+股票的新闻信息,股价变化情况,也可以获取债券,期货,基金,比特币,信托,理财,私募等等理财产品的各类信息,也可以关注雪球用户建立的百万组合,订阅它们的实时调仓信息,还可以关注雪球大V。雪球当前有百万日活跃用户,每天有4亿的API调用。App Store 财务免费榜第 18 名。历史上曾排到财务第二,总免费榜第 19。
二. 雪球当前总体架构
作为一个典型的移动互联网创业公司,雪球的总体架构也是非常典型的设计:
最上层是三个端:web端,android端和iOS端。流量比例大约为 2:4:4 。web3.0 的交易功能,在 web 端并不提供。
接入层以及下面的几个层,都在我们的自建机房内部。雪球当前只部署了一个机房,还属于单机房时代。正在进行“私有云+公有云混合部署”方案推进过程中。
我们当前使用 nodejs 作为 web 端模板引擎。nodejs 模块与android 和 ios 的 app 模块一起属于大前端团队负责。
再往下是位于 nginx 后面的 api 模块。跟 linkedin 的 leo 和微博的 v4 一样,雪球也有一个遗留的大一统系统,名字就叫 snowball 。最初,所有的逻辑都在 snowball 中实现的。后来慢慢的拆出去了很多 rpc 服务,再后来慢慢的拆出去了一些 http api 做成了独立业务,但即便如此,snowball 仍然是雪球系统中最大的一个部署单元。
在需要性能的地方,我们使用 netty 搭建了一些独立的接口,比如 quoto server,是用来提供开盘期间每秒一次的股价查询服务,单机 qps 5w+,这个一会再细说;而 IM 服务,起初设计里是用来提供聊天服务,而现在,它最大的用途是提供一个可靠的 push 通道,提供 5w/s 的消息下发容量,这个也一会再细说。
雪球的服务化拆分及治理采用 twitter 开源的 finagle rpc 框架,并在上面进行了一些二次开发和定制。定制的功能主要集中在 access log 增强,和 fail fast,fail over 策略及降级开关等。 finagle 的实现比较复杂,debug 和二次开发的门槛较高,团队内部对此也进行了一些讨论。
雪球的业务比较复杂,在服务层中,大致可以分为几类:第一类是web1.0,2.0 及基础服务,我们称为社区,包括用户,帖子,新闻,股价,搜索等等,类比对象就是新浪财经门户+微博;第二类是组合及推荐,主要提供股票投资策略的展示和建议,类比对象是美国的motif;第三类是通道,类似股市中的“支付宝”,接入多家券商,提供瞬间开户,一键下单等等各种方便操作的功能。
雪球的业务实现中,包含很多异步计算逻辑,比如搜索建索引,比如股票涨跌停发通知,比如组合收益计算等等,为此,我们设计了一个独立的 Thread/Task 模块,方便管理所有的后台计算任务。但随着这些 task 越来越多,逻辑差异越来越大,一个统一的模块并不是总是最佳的方案,所以,我们又把它拆成了两大类:流式的,和批量式的。
雪球的推荐体系包括组合推荐“买什么”和个性化推荐。我们最近正在重新梳理我们的大数据体系,这个感兴趣的话可以单聊。
最下面是基础设施层。雪球基础设施层包括:redis,mysql,mq,zk,hdfs,以及容器 docker。
线上服务之外,我们的开发及后台设施也很典型:gitlab开发,jenkins打包,zabbix 监控系统向 openfalcon 迁移,redimine向confluence迁移,jira,以及内部开发的 skiing 后台管理系统。
** 三. 雪球架构优化历程**
首先描述一下标题中的“股市动荡”定语修饰词吧:
上证指数从年初的3000点半年时间涨到了5000多,6月12号达到最高点5200点,然后就急转直下,最大单日跌幅 8.48%,一路跌回4000点以下。最近一周都在3900多徘徊。
3月最后一周,A股开户 166万户,超过历史最高纪录 2007年5月第二周165万户。
4月份,证监会宣布A股支持单用户开设多账户。
6月底,证金公司代表国家队入场救市。
7月份,证监会宣布严打场外配资。
中国好声音广告第一晚,带来超过平时峰值200倍的注册量
挑战:小 VS 大:
小:小公司的体量,团队小,机器规模小
大:堪比大公司的业务线数量,业务复杂度,瞬间峰值冲击
雪球的业务线 = 1个新浪财经 + 1 个微博 + 1 个 motif + 1 个大智慧/同花顺。由于基数小,API调用瞬间峰值大约为平时峰值的 30+ 倍。
挑战:快速增长,移动互联网 + 金融,风口,A股大盘剧烈波动。
首先,在app端,在我们核心业务从 web2.0 sns 向 3.0 移动交易闭环进化的过程中,我们开发了一个自己的 hybrid 框架:本地原生框架,加离线 h5 页面,以此来支撑我们的快速业务迭代。当前,雪球前端可以做到 2 周一个版本,且同时并行推进 3 个版本:一个在 app store 等待审核上线,一个在内测或公测,一个在开发。我们的前端架构师孟祥宇在今年的 wot 上有一个关于这方面的详细分享,有兴趣的可以稍后再深入了解。
雪球App实践—构建灵活、可靠的Hybrid框架 http://wot.51cto.com/2015mobile/ http://down.51cto.com/data/2080769
另外,为了保障服务的可用性,我们做了一系列的“端到端服务质量监控”。感兴趣的可以搜索我今年4月份在环信SM meetup上做的分享《移动时代端到端的稳定性保障》。其中在 app 端,我们采用了一种代价最小的数据传输方案:对用户的网络流量,电池等额外消耗几乎为0
每个请求里带上前一个请求的结果
succ or fail : 1 char
失败原因:0 - 1 char
请求接口编号: 1 char
请求耗时:2 - 3 char
其它:网络制式,etc
炒股的人大多都会盯盘:即在开盘期间,开着一个web页面或者app,实时的看股价的上下跳动。说到“实时”,美股港股当前都是流式的数据推送,但国内的A股,基本上都是每隔一段时间给出一份系统中所有股票现价的一个快照。这个时间间隔,理论上是3秒,实际上一般都在5秒左右。 交了钱签了合同,雪球作为合作方就可以从交易所下属的数据公司那里拿到数据了,然后提供给自己的用户使用。
刚才介绍总体架构图的时候有提到 quote server ,说到这是需要性能的地方。
业务场景是这样的,雪球上个人主页,开盘期间,每秒轮询一次当前用户关注的股票价格变动情况。在内部,所有的组合收益计算,每隔一段时间需要获取一下当前所有股票的实时价格。起初同时在线用户不多,这个接口就是一个部署在 snowball 中的普通接口,股价信息被实时写入 redis ,读取的时候就从 redis 中读。后来,A股大涨,snowball 抗不住了。于是我们就做了一个典型的优化:独立 server + 本地内存存储。开盘期间每次数据更新后,数据接收组件主动去更新 quote server 内存中的数据。 后续进一步优化方案是将这个接口以及相关的处理逻辑都迁移到公有云上去。
对于那些不盯盘的人,最实用的功能就是股价提醒了。在雪球上,你除了可以关注用户,还可以关注股票。如果你关注的某只股票涨了或跌了,我们都可以非常及时的通知你。雪球上热门股票拥有超过 50w 粉丝(招商银行,苏宁云商)粉丝可以设置:当这支股票涨幅或跌幅超过 x%(默认7%)时提醒我。曾经连续3天,每天超过1000股跌停,证监会开了一个会,于是接下来2天超过1000股涨停
原来做法:
股票涨(跌)x%,扫一遍粉丝列表,过滤出所有符合条件的粉丝,推送消息
新做法:
预先建立索引,开盘期间载入内存
1%:uid1,uid2
2%:uid3,uid4,uid5
3%:uid6
问题:有时候嫌太及时了:频繁跌停,打开跌停,再跌停,再打开。。。的时候
内部线上记录:
4台机器。
单条消息延时 99% 小于 30秒。
下一步优化目标:99% 小于 10 秒
IM 系统最初的设计目标是为雪球上的用户提供一个聊天的功能:
送达率第一
雪球IM:Netty + 自定义网络协议
Akka : 每个在线client一个actor
推模式:client 在线情况下使用推模式
多端同步:单账号多端可登录,并保持各种状态同步
移动互联网时代,除了微信qq以外的所有IM,都转型成了推送通道,核心指标变成了瞬间峰值性能。原有架构很多地方都不太合适了。
优化:
分配更多资源:推送账号actor池
精简业务逻辑:重复消息只存id,实时提醒内容不推历史设备,不更新非活跃设备的session列表等等
本地缓存:拉黑等无法精简的业务逻辑迁移到本地缓存
优化代码:异步加密存储,去除不合理的 akka 使用
akka这个解释一下:akka 有一个自己的 log adapter,内部使用一个 actor 来处理所有的 log event stream 。当瞬间峰值到来的时候,这个 event stream 一下子就堵了上百万条 log ,导致 gc 颠簸非常严重。最后的解决办法是,绕过 akka 的 log adapter,直接使用 logback 的 appender
线上记录:5w/s (主动限速)的推送持续 3 分钟,p99 性能指标无明显变化
7月10号我们在中国好声音上做了3期广告。在广告播出之前,我们针对广告可能带来的对系统的冲击进行了压力测试,主要是新用户注册模块,当时预估广告播出期间2小时新注册100万
压测发现 DB 成为瓶颈:
昵称检测 cache miss > 40%
昵称禁用词 where like 模糊查询
手机号是否注册 cache miss > 80%
注册新用户:5 insert
优化:
redis store:昵称,手机号
本地存储:昵称禁用词
业务流程优化:DB insert 操作同步改异步
下一步优化计划:
将 sns 系统中所有的上行操作都改成类似的异步模式
接口调用时中只更新缓存,而且主动设置5分钟过期,然后写一个消息到 mq 队列,队列处理程序拿到消息再做其它耗时操作。
为了支持失败重试,需要将主要的资源操作步骤都做成幂等。
前置模块HA:
合作方合规要求:业务单元部署到合作方内网,用户的敏感数据不允许离开进程内存
业务本身要求:业务单元本身为有状态服务,业务单元高可用
解决方案:
使用 Hazelcast In-Memory Data Grid 的 replication map 在多个 jvm 实例之间做数据同步。
java 启动参数加上 -XX:+DisableAttachMechanism -XX:-UsePerfData,禁止 jstack,jmap 等等 jdk 工具连接
关于前置模块,其实还有很多很奇葩的故事,鉴于时间关系,这里就不展开讲了。以后有机会可以当笑话给大家讲。
组合净值计算性能优化:
一支股票可能在超过20万个组合里(南车北车中车,暴风科技)
离线计算,存储计算后的结果
股价3秒变一次,涉及到这支股票的所有组合理论上也需要每 3 秒重新计算一次
大家可能会问,为什么不用户请求时,实时计算呢?这是因为“组合净值”中还包括分红送配,分股,送股,拆股,合股,现金,红利等等,业务太过复杂,开发初期经常需要调整计算逻辑,所以就设计成后台离线计算模式了。当前正在改造,将分红送配逻辑做成离线计算,股价组成的净值实时计算。接口请求是,将实时计算部分和离线计算部分合并成最终结果。
实际上,我们的计算逻辑是比较低效的:循环遍历所有的组合,对每个组合,获取所有的价值数据,然后计算。完成一遍循环后,立即开始下一轮循环。
优化:
分级:活跃用户的活跃组合,其它组合。
批量:拉取当前所有股票的现价到 JVM 内存里,这一轮的所有组合计算都用这一份股价快照。
关于这个话题的更详细内容,感兴趣的可以参考雪球组合业务总监张岩枫在今年的 arch summit 深圳大会上的分享:构建高可用的雪球投资组合系统技术实践 http://sz2015.archsummit.com/speakers/201825
最后,我们还做了一些通用的架构和性能优化,包括jdk升级到8,开发了一个基于 zookeeper 的 config center 和开关降级系统
四. 聊聊关于架构优化的一些总结和感想
在各种场合经常听说的架构优化,一般都是优化某一个具体的业务模块,将性能优化到极致。而在雪球,我们做的架构优化更多的是从问题出发,解决实际问题,解决到可以接受的程度即可。可能大家看起来会觉得很凌乱,而且每个事情单独拎出来好像都不是什么大事。
我们在对一个大服务做架构优化时,一般是往深入的本质进行挖掘;当我们面对一堆架构各异的小服务时,“架构优化”的含义其实是有一些不一样的。大部分时候,我们并不需要(也没有办法)深入到小服务的最底层进行优化,而是去掉或者优化原来明显不合理的地方就可以了。
在快速迭代的创业公司,我们可能不会针对某一个服务做很完善的架构设计和代码实现,当出现各种问题时,也不会去追求极致的优化,而是以解决瓶颈问题为先。
即使我们经历过一回将 snowball 拆分服务化的过程,但当我们重新上一个新的业务时,我们依然选择将它做成一个大一统的服务。只是这一次,我们会提前定义好每个模块的 service 接口,为以后可能的服务化铺好路。
在创业公司里,重写是不能接受的;大的重构,从时间和人力投入上看,一般也是无法承担的。而“裱糊匠”式做法,哪里有性能问题就加机器,加缓存,加数据库,有可用性问题就加重试,加log,出故障就加流程,加测试,这也不是雪球团队工作方式。我们一般都采用最小改动的方式,即,准确定义问题,定位问题根源,找到问题本质,制定最佳方案,以最小的改动代价,将问题解决到可接受的范围内。
我们现在正在所有的地方强推3个数据指标:qps,p99,error rate。每个技术人员对自己负责的服务,一定要有最基本的数据指标意识。数字,是发现问题,定位根源,找到本质的最重要的依赖条件。没有之一。
我们的原则:保持技术栈的一致性和简单性,有节制的尝试新技术,保持所有线上服务依赖的技术可控,简单来说,能 hold 住。
能用cache的地方绝不用db,能异步的地方,绝不同步。俗称的:吃一堑,长一智。
特事特办:业务在发展,需求在变化,实现方式也需要跟着变化。简单的来说:遗留系统的优化,最佳方案就是砍需求,呵呵。