㈠ 如何处理股民诉某港股份公司虚假证券信息案
宓雪军厉健
案情简介
2002年1月15日,最高人民法院发布了《关于受理证券市场因虚假陈述引发的民事侵权纠纷案件有关问题的通知》。之后,有关中级法院受理的证券民事赔偿案件达900多件,其间涉及大庆联谊、圣方科技、ST同达、嘉宝实业、渤海集团、ST九州、三九医药、红光实业、银广夏、sT天颐、sT东方、某某港等12家上市公司。
同年11月11日,上海股民彭淼秋女士诉嘉宝实业公司等作出虚假陈述赔偿案在上海市第二中级人民法院调解结案。彭淼秋的诉讼请求为1312.32元,实际获赔800元。彭淼秋由此成为我国证券民事赔偿诉讼案中获赔第一人,该案也因系中国证券民事赔偿诉讼第一案而在中国证券市场发展中抹上浓重的一笔。
2003年1月9日,最高人民法院颁布《关于审理证券市场因虚假陈述引发的民事赔偿案件的若干规定》(证券界将其简称为《1·9规定》)。
《1·9规定》指出,如果上市公司虚假陈述,曾被证监会或财政部处罚或是被法院判定有罪,因此受到损失的股民可以向上市公司索赔。
上述规定甫出台,立刻一石激起千层浪。自2003年2月1日起,受害股民纷纷再次拿起法律武器把作出虚假陈述的上市公司告上法庭,而各地方法院也为证券官司大开绿灯。
此前的2002年9月至12月,财政部对某某港2000年及前一年度的检查表明,某某港多确认收入3.6717亿元人民币,少计财务费用4945万元人民币,少计主营业务成本780万元人民币,多列资产1.1969亿元人民币。
随后,某某港被财政部作出行政处罚:予以通报,并处以罚款10万元。2002年10月21日,公司董事会对被检查和处罚问题进行公告,某某港A股、某港B股股价随之大幅下跌。
2003年2月8日,成都市3名股民起诉某某港,沈阳市中级人民法院随后立案。这是《1·9规定》实施以后全国第一例证券民事赔偿案,也是第一件起诉B股上市公司的赔偿案,第一起以财政部行政处罚为前置条件的案件。
在该案的被告名单中,国际五大会计师事务所毕马威的名字也赫然在列。
斯时,浙江的小股民从媒体上看到消息激动不已,但又无可奈何。激动的是索赔有了“领头羊”,有了“前车之鉴”;而无可奈何的是,成都3名股民总共索赔8万多元,赔偿多少仍是未知数。而扣除各种费用,即使是全赔也所剩无几。有人开始打消索赔的念头。
2003年2月,宓雪军作为法律咨询专家参与杭州武林广场的一次免费法律咨询现场活动。许多小股民把索赔的问题抛给了他,他做了一一解答。之后,宓雪军借助媒体称可以先期垫付差旅费,为股民状告上市公司做代理。
截至2003年6月16日,57名股民委托裕丰律所状告某某港,其中“某某港A股”有14名,“某港B股”有43名。沈阳市中级人民法院予以立案,并依照原告人数、损失类型分为6个案件,索赔总额185万元。
起诉的被告不仅有某某港股份有限公司,还有亿万富豪张某某(时任某某港的法定代表人、董事长)、A省证券公司、B证券有限公司、C毕马威华振会计师事务所、D毕马威会计师事务所。
2005年4月,浙江82位“某某港”、“某港B股”股民按诉讼标的额的65%最终获赔176万元,这一赔付比例在全国各地“某某港”系列案件中是最高的,外省股民“某某港”案的赔付比例大致在30%一55%之间,相比之下本所律师的代理成效非常显著,《青年时报》评价该案为“浙江小股民索赔第一案”。
争议焦点
原告的损失是否应当扣除大盘系统风险因素。
被告某某港股份有限公司(以下简称某某港公司)依据《规定》第19条第四款规定提出抗辩,提出“大盘系统风险扣除论”,要求对每位原告的损失求偿额分别扣除大盘系统风险因素,即按诉讼标的额的30%赔付。
律师认为《规定》第19条第四款规定存在缺陷,坚决反对“大盘系统风险扣除论”。本所律师引用“老鼠屎理论”予以驳斥,并举出实例据理力争。
审理判决
2005年4月,浙江82位“某某港”、“某港B股”股民按诉讼标的额的65%最终获赔176万元。
经典评析
最高人民法院《规定》第19条第四款规定:被告举证证明原告具有以下情形的,人民法院应当认定虚假陈述与损害结果之间不存在因果关系:损失或者部分损失是由证券市场系统风险等其他因素所致。
由于上述条款仅对“证券市场系统风险”作了原则性的规定,《最高人民法院关于审理证券市场虚假陈述案件司法解释理解与适用》对“证券市场系统风险”也未详细阐述,因此在司法实践中引起很大争议。
被告某某港公司依据《规定》第19条第四款提出抗辩,虽然某某港公司存在虚假陈述问题,但如果不是大盘大跌,股民根本不会遭此重创。因此,每位原告的损失求偿额应当分别扣除大盘系统风险因素。
被告某某港公司举例论证:因国务院2001年6月12日出台减持国有股方案,造成股市暴跌,使上证指数从2222.96点跌至最低点1339.20点,跌幅高达39.76%。受此影响,某港A股大幅下跌,股价从11.55元跌至最低价7元,跌幅高达39.39%。由此可印证,由于系统风险造成某某港股价下跌,此期间某某港A股股东损失与某某港虚假陈述之问没有因果关系。
因国务院2002年6月24日停止减持国有股方案,造成股市上扬,上证指数涨幅高达9.25%,受此影响,某某港A股涨幅10.07%。直至2002年10月才跌回宣布停止减持国有股方案之前的股价。由此可见,由于系统风险造成某某港股价暴涨,此期间因高价购买某某港A股造成损失与某某港虚假陈述之间没有因果关系。
据此,被告某某港公司认为原告损失求偿额的70%是由于大盘系统风险因素造成的,只同意按损失求偿额的30%赔付。
律师认为,《规定》对“证券市场系统风险”的规定,仅仅是原则性地规定在第19条中,缺乏可操作性。被告某某港公司据此提出“大盘系统风险扣除论”抗辩,显然是缺乏充足的法律依据。
假设沈阳中院采纳被告某某港公司提出的“大盘系统风险扣除论”观点,那么,大盘指数涨跌幅度的起止时点是无法确定的,而计算起止时点的不确定性必然导致涨跌幅度结果不一致,每位原告扣除的金额可能出现好几个计算结果,无论取舍哪个计算结果都会产生重大争议。比如说,大盘指数的起算时点按被告虚假陈述实施日起算还是按原告第一笔买人股票的时间起算?是按照符合因果关系的股票买入时起算还是按照多次买入的平均指数计算?假设大盘指数涨跌幅度起算时点从被告虚假陈述时起至抛售日或基准日止。举例说明:“锦港B股”于1998年5月19日上市,根据上交所历史数据查询:1998年5月19日-2002年12月23日,B股指数历史行情累计涨幅148.9%。“某某港”A股于1999年6月7日上市,根据上交所历史数据查询:1999年6月7日-2003年4月4日,A股指数历史行情累计涨幅16.41%。
假设大盘指数涨跌幅度的起算时点从揭露日起至基准日止。举例说明:根据上交所历史数据查询:2002年10月22日-2002年12月23日,B股指数历史行情累计涨跌幅-11.94%。2002年10月22日-2003年4月4日,A股指数历史行情累计涨幅0.08%。
由此可见,如果法院认定“证券市场系统风险”,那么,如何精确计算原告的损失额将是法院面临的重大难题,在司法实践中将会产生更大的争议。
同时,律师认为,大盘综合指数只是表明所有股票的涨跌趋势和幅度,不能代表任何个股的风险。在大盘综合指数上涨的情况下,“大盘系统风险扣除论”将成为谬误。相对于“大盘系统风险扣除论”,“老鼠屎理论”显然更有说服力。
“系统风险扣除论”只是假设了大盘下跌时,原告的损失必须扣除系统风险因素,那么,如果大盘上涨时会是怎样的情形呢?假设在涉及虚假陈述的公司股票下跌50%期间,大盘却上涨了20%,根据“系统风险扣除论”,是不是应该赔偿投资者50%+20%的损失呢?如此,原告不但没有亏损,相反还可以赚20%?但是,侵权损害赔偿的基本法理是没有实际发生的损失不能获得赔偿,否则便是不当得利。
对此,“大盘系统风险扣除论”又作何解释呢?很显然,《规定》第19条第四款对此也是无法作出合情合理的解释。
事实上,即使在资本市场较为发达的资本主义国家中,也没有一个国家在审理证券市场民事侵权损害赔偿案件时,考虑所谓的大盘系统风险。
为了更形象生动地驳斥“大盘系统风险扣除论”,律师引用了“老鼠屎理论”:在饭店吃饭可能会碰到这样的情况,即在最后吃汤的时候,发现碗里有一粒老鼠屎,于是大家不仅不会再喝,还会让服务员将汤碗端走。这时,老板却阻止说,这汤还可以喝,只要把老鼠屎剔除,大家继续喝吧。试问,有人继续喝吗?有人仍然为此买单吗?答案显然是显而易见的。汤是否可口好比是系统风险,正常情况下只要点了汤就应当付钱。老鼠屎好比是个股的特殊风险,这是事先不会考虑到的。如果汤里出现老鼠屎,那么有过错的饭店一方将承担全部的风险,而不再考虑汤是否可口的系统风险,汤里有了老鼠屎就不买单是社会普遍接受的公理。
根据上述理由,本所律师认为被告某某港公司依据“大盘系统风险扣除论”减免赔偿责任的理由不能成立。
通过对上述观点的具体分析,可见《规定》第19条第四款法理依据不足,且缺乏可操作性,原告的损失不应扣除大盘系统风险因素。
“某某港”案虽已调解结案,寥寥几百字的调解书中并没有提及如何适用《规定》第19条第四款,但“证券市场系统风险”如何认定对于各地法院在审理其他证券虚假陈述案件时是无法回避的,建议最高人民法院以个案批复的形式或出台新的司法解释予以明确。
㈡ 股票价格确定的依据有哪些为什么
股市心理是决定股价的最终因素。
网友哈哈镜提出的种种因素,都会影响股市心理的变化。这里的股市心理是指投资者群体心理效应。股价是盲目的飘动。它就象一个喝醉的人在茫茫的雪地上行走。但它往往会顺风行走。虽然如此,很多酒鬼也会走回自己的家。即公司的可计算价值(并非实际价值,因实际价值是测不准的,或有各种测算方法或理论)附近。
股票做为一种特殊的商品,由于它价值的不确定,所以价格漂浮不定也就再所难免。
有人认为由供求关系决定。很有道理,但值得商讨。因为它解释不了正常情况下,在股票总数不变的情况下,价格会大幅波动。涨时就供应不足,跌时就供应过剩?实际上,大家都想买,股价就升,否则就跌。
根据以上的道理,可以简单的认为,所有投身股市的人都是在赌博,不管你是怎么想的(投资还是投机)。你都是在赌行动的未来。
一群赌徒面对的是,风云变幻的市场·琢磨不透的上市公司和蠢而贪的管理层。
㈢ 经济法类问题 公司法
答:
(1)不一定。《公司法》第64条规定,一个有限责任公司的股东不能证明公司财产独立于股东自己财产的,应当对公司债务承担连带责任。
(2)可以,《公司法》第143条规定,公司不得收购本公司股份。但是,将股份奖励给本公司职工的除外。
(3)蓝天公司的临时股东大会召开程序不符合法律规定的有:1、应当在董事会只有5人之日起2个月内召开临时股东大会,而不应该3个月后才召开。2、董事会应当在临时股东大会召开30日前公告会议召开的时间、地点、审议事项,而不应该15日前才公告。
甲公司、乙公司、张某在补选董事的决议中各拥有的表决权是:甲160万、乙120万、张60万元。
(4)有可能,因为公司章程约定存在累计投票制。
(5)能得到支持。参见《公司法》第22条:公司股东会或者股东大会、董事会的决议内容违反法律、行政法规的无效。
股东会或者股东大会、董事会的会议召集程序、表决方式违反法律、行政法规或者公司章程,或者决议内容违反公司章程的,股东可以自决议作出之日起六十日内,请求人民法院撤销。
股东依照前款规定提起诉讼的,人民法院可以应公司的请求,要求股东提供相应担保.
公司根据股东会或者股东大会、董事会决议已办理变更登记的,人民法院宣告该决议无效或者撤销该决议后,公司应当向公司登记机关申请撤销变更登记。
㈣ 雪银化纤哪一年发行的股票
看F10………………………………
㈤ 长期股权投资问题,请高手详细解答。
(二)
2008年东方股份有限公司实现净利润10 000 000元。甲公司按照持股比例确认投资收益3 000 000元。
借:长期股权投资——损益调整 3 000 000
贷:投资收益 3 000 000
【2008年末,甲公司确认的投资收益3 000 000元,要转入本年利润科目,据以计算2008年度的经营成果-利润总额,所得税费用,净利润等。】
2009年5月15日,东方股份有限公司已宣告发放现金股利,每10股派3元,甲公司可分派到1 500 000元。
借:应收股利 1 500 000
贷:长期股权投资——损益调整 1 500 000
2009年6月15日,甲公司收到东方股份有限公司分派的现金股利
借:银行存款 1 500 000
贷:应收股利 1 500 000
此时,长期股权投资——损益调整的账面价值
=3 000 000- 1 500 000
= 1 500 000
㈥ 持有山东雪银化纤公司股票,不知现在怎么办
你可以去证券公司打印你的交割单,那上面肯定有该股票的证券编码,那就是你现在的股票名称和价格。
㈦ 题目:某依法必须招标项目的施工招标。蓝天公司为该项目的设计单位;白云公司具备独立法人资格,是蓝天公
答案是D,甲错乙对
㈧ 运城碧水蓝天旅游开发有限公司怎么样
简介:东华山滑雪场项目距离运城市90余公里,距离县城10公里,占地100亩,遵循低碳建设原则,前期规划六大区域:滑雪区、戏雪区、安全停止区、雪上冲浪区、儿童乐园、接待功能大厅;分别设计建成初、中、高级滑雪道各1条,高差最小2米,最大46米,最小坡度比1.15%,最大坡度比18%,面积约29000㎡:其中初、中级道雪道长度580米,雪道宽度50米;戏雪区雪道长度为60米,宽度为30米,摩托车道占地3800㎡;雪圈道长度为200米,宽度为20米及缓冲区7200㎡,总体造雪面积达40000㎡。戏雪滑雪最佳容量为3000人/每天,日接待最大量为4000-5000人,作为滑雪戏雪乐园的配套服务设施,设置了1条牵引索道长为280米及专门为初级滑雪者配备200米输送魔毯,更加贴心的设计,免去了初级滑雪者初次滑雪时的恐惧,为了满足滑雪戏雪场地造雪用水,设计有过渡水池一处,容量约2000立方米。根据旅游行业淡旺季的特殊性,元旦、春节、元宵节等长假滑雪、戏雪为主要经营项目,根据市场定位,绛县,翼城,曲沃、候马、沁水距离项目较近,消费能力较强,是重点挖客区;万荣、平陆、闻喜、阳城、泽州、高平等地有相当一部分滑雪爱好者,运用广告宣传及活动力度吸引消费,且通过与旅行社、酒店、银行、地产、商场等机构合作,互惠互利,提升知名度消刺激市场消费。滑板,悠波球,雪地摩托,雪上飞碟,滑雪表演,自助美食、烧烤广场
法定代表人:杨丽娜
成立时间:2014-10-16
注册资本:200万人民币
工商注册号:140826100079771
企业类型:有限责任公司(自然人投资或控股)
公司地址:山西省运城市绛县陈村镇东荆上村
㈨ 如何通过雪球查询股票之前的变动状况
一. 雪球公司介绍
雪球 聪明的投资者都在这里。
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,能异步的地方,绝不同步。俗称的:吃一堑,长一智。
特事特办:业务在发展,需求在变化,实现方式也需要跟着变化。简单的来说:遗留系统的优化,最佳方案就是砍需求,呵呵。
㈩ 我对股票有点不明白
你不能上市交易,又有多少肯出钱吗?那如何起到融资的作用呢?出资的人没有收益人家不可能把钱拿出来的。人家凭什么为你公司出资金呢?
股票的涨跌当然对公司有影响了,好比说一个东西以前值10块钱,现在突然间变成5块钱,您说有没有影响呢?