- 博客(888)
- 资源 (7)
- 收藏
- 关注
转载 人工智能反欺诈三部曲——特征工程
近年来,随着移动互联网的兴起,各种传统的业务逐渐转至线上,互联网金融,电子商务迅速发展,商家针对营销及交易环节的推广活动经常以返利的形式进行。由于有利可图,此类线上推广迅速滋生了针对返利的系统性的优惠套利欺诈行为,俗称薅羊毛。由于移动设备的天然隐蔽性和欺诈行为的多变性,传统的防范手段,比如规则系统等就显得有些笨拙和捉襟见肘了,使得薅羊毛看起来仿佛防不胜防。但是正所谓魔高一尺,道高一丈。在实践中,我...
2018-05-19 17:21:35 4428
转载 JVM垃圾回收CMS
HotSpot JVM的并发标记清理收集器(CMS收集器)的主要目标就是:低应用停顿时间。该目标对于大多数交互式应用很重要,比如web应用。在我们看一下有关JVM的参数之前,让我们简要回顾CMS收集器的操作和使用它时可能出现的主要挑战。就像吞吐量收集器(参见本系列的第6部分),CMS收集器处理老年代的对象,然而其操作要复杂得多。吞吐量收集器总是暂停应用程序线程,并且可能是相当长的一段时间,
2017-11-13 00:17:24 1941
转载 揭秘互联网金融的大数据风控
大数据能够进行数据变现的商业模式目前就是两个,一个是精准营销,典型的场景是商品推荐和精准广告投放,另外一个是大数据风控,典型的场景是互联网金融的大数据风控。金融的本质是风险管理,风控是所有金融业务的核心。典型的金融借贷业务例如抵押贷款、消费贷款、P2P、供应链金融、以及票据融资都需要数据风控识别欺诈用户及评估用户信用等级。传统金融的风控主要利用了信用属性强大的金融数据,一般采用20
2017-10-31 20:32:22 4315
转载 阿里云飞天系统的技术架构
阿里云飞天系统的技术架构阿里云有以下五大优势:中国万网,提供虚拟主机托管的服务,而且还提供域名等服务,其客户群非常庞大;淘宝、阿里巴巴(内部称:B2B)、支付宝等其他子公司有大量的数据分析业务,需要消耗大量的服务器资源,电力,机房设施;阿里巴巴集团已经购买了多条大带宽的专线,并且形成多网互联和加速的能 力,并且有能力自己建设机房等方面的能力;阿里系公司技吸收
2017-09-21 18:59:25 16252 1
转载 学习笔记:The Log(我所读过的最好的一篇分布式技术文章)
前言这是一篇学习笔记。学习的材料来自Jay Kreps的一篇讲Log的博文。原文很长,但是我坚持看完了,收获颇多,也深深为Jay哥的技术能力、架构能力和对于分布式系统的理解之深刻所折服。同时也因为某些理解和Jay哥观点吻合而略沾沾自喜。Jay Kreps是前Linkedin的Principal Staff Engineer,现任Confluent公司的联合创始人和CEO,Kafka
2017-05-02 20:05:58 2614
转载 Kafka高可用设计解析
Kafka在0.8以前的版本中,并不提供High Availablity机制,一旦一个或多个Broker宕机,则宕机期间其上所有Partition都无法继续提供服务。若该Broker永远不能再恢复,亦或磁盘故障,则其上数据将丢失。而Kafka的设计目标之一即是提供数据持久化,同时对于分布式系统来说,尤其当集群规模上升到一定程度后,一台或者多台机器宕机的可能性大大提高,对于Failover机制的需求
2017-03-27 20:36:47 1379
转载 Kafka消息可靠性
如果MQ没有类似数据库事务结构和保证,是不可能达到消息投递100%可靠的,极端情况下消息投递要么丢失或重复。下面咋们从producer,broker,consumer的角度分析一下Kafka中会出现哪些情况。1.producer发送消息到Broker目前生产者发送消息(request.required.acks)有三种方式。acks =
2017-03-26 19:52:18 3322
转载 Kafka原理简介
背景介绍:Kafka 是一个消息系统,原本开发自 LinkedIn,用作 LinkedIn 的活动流(Activity Stream)和运营数据处理管道(Pipeline)的基础。现在它已被多家公司作为多种类型的数据管道和消息系统使用。活动流数据是几乎所有站点在对其网站使用情况做报表时都要用到的数据中最常规的部分。活动数据包括页面访问量(Page View)、被查看内容方面的信息以及搜索情
2017-03-26 19:42:39 3131
转载 kafka知识点整理
一、为什么需要消息系统1.解耦:允许你独立的扩展或修改两边的处理过程,只要确保它们遵守同样的接口约束。2.冗余:消息队列把数据进行持久化直到它们已经被完全处理,通过这一方式规避了数据丢失风险。许多消息队列所采用的”插入-获取-删除”范式中,在把一个消息从队列中删除之前,需要你的处理系统明确的指出该消息已经被处理完毕,从而确保你的数据被安全的保存直到你使用完毕。3.扩展性:
2017-03-25 20:01:50 923 1
转载 分布式数据中间件TDDL、Amoeba、Cobar、MyCAT架构比较
框架比较TDDLAmoebaCobarMyCat点评TDDL不同于其它几款产品,并非独立的中间件,只能算作中间层,是以Jar包方式提供给应用调用。属于JDBC Shard的思想,网上也有很多其它类似产品。另外,网上有关于TDDL的图,如http://www.tuicool.com/articles/nmeu
2017-03-08 11:40:16 33100 4
转载 分布式缓存集群方案选型
分布式缓存集群方案特性使用场景(Memcache/Redis(Twemproxy/Codis/Redis-cluster))优缺点对比及选型
2017-02-28 23:56:17 1822
转载 MySQL 开发实践 8 问,你能 hold 住几个?
最近研发的项目对DB依赖比较重,梳理了这段时间使用MySQL遇到的8个比较具有代表性的问题,答案也比较偏自己的开发实践,没有DBA专业和深入,有出入的请使劲拍砖!…MySQL读写性能是多少,有哪些性能相关的配置参数?MySQL负载高时,如何找到是由哪些SQL引起的?如何针对具体的SQL做优化?SQL
2017-02-12 22:16:54 1055
转载 MySQL分区与传统的分库分表
传统的分库分表传统的分库分表都是通过应用层逻辑实现的,对于数据库层面来说,都是普通的表和库。分库分库的原因首先,在单台数据库服务器性能足够的情况下,分库对于数据库性能是没有影响的。在数据库存储上,database只起到一个namespace的作用。database中的表文件存储在一个以database名命名的文件夹中。比如下面的employees数据库:my
2017-01-31 16:28:04 4819 1
转载 分布式事务之说说TCC事务
在当前如火如荼的互联网浪潮下,如何应对海量数据、高并发成为大家面临的普遍难题。广大IT公司从以往的集中式网站架构,纷纷转向分布式的网站架构,随之而来的就是进行数据库拆分和应用拆分,如何在跨数据库、跨应用保证数据操作和业务操作的一致性、原子性,又成为需要解决的新的问题。从分布式事务的需求来源来看:1、跨数据库数据库拆分(水平、垂直)带来的分布式事务->保证跨库操作的原子性基于单个JVM
2017-01-30 16:46:48 51376 5
转载 深入理解 Spring 事务原理
一、事务的基本原理Spring事务的本质其实就是数据库对事务的支持,没有数据库的事务支持,spring是无法提供事务功能的。对于纯JDBC操作数据库,想要用到事务,可以按照以下步骤进行:获取连接 Connection con = DriverManager.getConnection()开启事务con.setAutoCommit(true/false);执行CRUD提交事务/回滚事
2016-12-13 23:57:04 1439
转载 分布式系统事务一致性解决方案
开篇在OLTP系统领域,我们在很多业务场景下都会面临事务一致性方面的需求,例如最经典的Bob给Smith转账的案例。传统的企业开发,系统往往是以单体应用形式存在的,也没有横跨多个数据库。我们通常只需借助开发平台中特有数据访问技术和框架(例如Spring、JDBC、ADO.NET),结合关系型数据库自带的事务管理机制来实现事务性的需求。关系型数据库通常具有ACID特性:原子性(Atomici
2016-12-12 20:17:36 1173
转载 分布式事务:不过是在一致性、吞吐量和复杂度之间,做一个选择
这是一个开撕的话题,我经历过太多的关于分布式事务的需求:“有没有简单的方案,像使用数据库事务那样,解决分布式数据一致性的问题”。特别是微服务架构流行的今天,一次交易需要跨越多个“服务”、多个数据库来实现,传统的技术手段,已经无法应对和满足微服务情况下这些复杂的场景了。针对微服务下的交易业务如何保障数据一致性,本文尽量做到理论结合实践,将我们在实际产品中用到的分布式事务实现机制,和大家扒一扒,希望能
2016-12-11 22:06:18 3249
转载 LevelDb 深入介绍
LevelDb日知录之一:LevelDb 101 说起LevelDb也许您不清楚,但是如果作为IT工程师,不知道下面两位大神级别的工程师,那您的领导估计会Hold不住了:Jeff Dean和Sanjay Ghemawat。这两位是Google公司重量级的工程师,为数甚少的Google Fellow之二。 Jeff Dean其人:http://research.g
2016-10-30 21:09:24 864
转载 RocketMQ入门
能够保证严格的消息顺序提供丰富的消息拉取模式高效的订阅者水平扩展能力实时的消息订阅机制亿级消息堆积能力一.RocketMQ网络部署特点 (1)NameServer是一个几乎无状态的节点,可集群部署,节点之间无任何信息同步 (2)Broker部署相对复杂,Broker氛围Master与Slave,一个Master可以对应多个Slaver,但是一个Slave
2016-10-16 16:49:12 1345
转载 全面分析 Spring 的编程式事务管理及声明式事务管理
开始之前关于本教程本教程将深入讲解 Spring 简单而强大的事务管理功能,包括编程式事务和声明式事务。通过对本教程的学习,您将能够理解 Spring 事务管理的本质,并灵活运用之。先决条件本教程假定您已经掌握了 Java 基础知识,并对 Spring 有一定了解。您还需要具备基本的事务管理的知识,比如:事务的定义,隔离级别的概念,等等。本文将直接使用这些概念而不做详细解释。另外,
2016-10-05 16:20:44 1388
转载 几款消息中间的调研
消息系统简介本次主要调研业界使用广泛的两款消息队列——RabbitMQ, Kafka, 以及阿里云的提供的两个服务, MNS和ONS.RabbitMQRabbitMQ 是使用Erlang编写的一个开源的消息队列,本身支持很多的协议:AMQP,XMPP, SMTP, STOMP,也正因如此,它非常重量级,更适合于企业级的开发。同时实现了Broker构架,这意味着消息在发送给客户端
2016-09-17 23:07:33 2888
转载 深入浅出HTTPS基本原理
基础知识准备:在了解HTTPS的基本原理之前,需要先了解如下的基本知识。 一、什么是HTTPS,TLS,SSL HTTPS,也称作HTTP over TLS。TLS的前身是SSL,TLS 1.0通常被标示为SSL 3.1,TLS 1.1为SSL 3.2,TLS 1.2为SSL 3.3。下图描述了在TCP/IP协议栈中TLS(各子协议)和HTTP的关系。
2016-09-04 17:53:45 18350 2
转载 分布式服务框架之服务化最佳实践
在服务化之前,业务通常都是本地API调用,本地方法调用性能损耗较小。服务化之后,服务提供者和消费者之间采用远程网络通信,增加了额外的性能损耗,业务调用的时延将增大,同时由于网络闪断等原因,分布式调用失败的风险也增大。如果服务框架没有足够的容错能力,业务失败率将会大幅提升。除了性能、可靠性等问题,跨节点的事务一致性问题、分布式调用带来的故障定界困难、海量微服务运维成本增加等也是分布式服务框架
2016-08-08 20:29:08 9542
转载 RocketMQ与kafka对比
淘宝内部的交易系统使用了淘宝自主研发的Notify消息中间件,使用Mysql作为消息存储媒介,可完全水平扩容,为了进一步降低成本,我们认为存储部分可以进一步优化,2011年初,Linkin开源了Kafka这个优秀的消息中间件,淘宝中间件团队在对Kafka做过充分Review之后,Kafka无限消息堆积,高效的持久化速度吸引了我们,但是同时发现这个消息系统主要定位于日志传输,对于使用在淘宝交易、订单
2016-08-07 21:51:18 2962
转载 微服务架构的基础框架选择:Spring Cloud还是Dubbo?
最近一段时间不论互联网还是传统行业,凡是涉及信息技术范畴的圈子几乎都在讨论 微服务架构 。近期也看到各大技术社区开始组织一些沙龙和论坛来分享Spring Cloud的相关实施经验,这对于最近正在整理Spring Cloud相关套件内容与实例应用的我而言,还是有不少激励的。目前,Spring Cloud在国内的知名度并不高,在前阵子的求职过程中,与一些互联网公司的架构师、技术VP或者CTO在
2016-07-31 13:50:44 91386 12
转载 HTTPS 能否避免流量劫持?
HTTPS 能否避免流量劫持?近日,看了一篇关于流量劫持的文章《安全科普:流量劫持能有多大危害?》,作者EtherDream以图文并茂的形式详细讲解了流量劫持及相关知识。“在如今这个讲究跨平台、体验好,并有云端支持的年代,WebApp 越来越火热。各种应用纷纷移植成网页版,一些甚至替代了客户端。同时,也造就了流量劫持前所未有的势头。”小编总结,这里提到的流量劫持危害,大多跟Http
2016-07-09 20:37:47 8953
转载 三种基本的存储引擎比较
1、Hash存储引擎代表数据库:redis、memcache等通常也常见于其他存储引擎的查找速度优化上。 Hash 索引结构的特殊性,其检索效率非常高,索引的检索可以一次定位,不像B-Tree 索引需要从根节点到枝节点,最后才能访问到页节点这样多次的IO访问,所以 Hash 索引的查询效率要远高于 B-Tree 索引。虽然 Hash 索引效率高,但是 Hash 索引本身由于其特殊性
2016-04-05 14:00:16 9021 1
转载 Netty3 VS Netty4 之线程模型
下面小节我们就详细得对Netty3和Netty4版本的I/O线程模型进行对比,以方便大家掌握两者的差异,在升级和使用中尽量少踩雷。1 Netty 3.X 版本线程模型Netty 3.X的I/O操作线程模型比较复杂,它的处理模型包括两部分:Inbound:主要包括链路建立事件、链路激活事件、读事件、I/O异常事件、链路关闭事件等;Outbound:主要包括写事件、连接
2016-03-27 15:45:05 9713
转载 理解数据库中的undo日志、redo日志、检查点
数据库存放数据的文件,本文称其为data file。数据库的内容在内存里是有缓存的,这里命名为db buffer。某次操作,我们取了数据库某表格中的数据,这个数据会在内存中缓存一些时间。对这个数据的修改在开始时候也只是修改在内存中的内容。当db buffer已满或者遇到其他的情况,这些数据会写入data file。undo,redo日志在内存里也是有缓存的,这里将其叫做lo
2016-03-14 13:34:25 23021 4
转载 架构师需要了解的Paxos原理、历程及实战
数据库高可用性难题数据库的数据一致和持续可用对电子商务和互联网金融的意义不言而喻,而这些业务在使用数据库时,无论 MySQL 还是 Oracle,都会面临一个艰难的取舍,就是如何处理主备库之间的数据同步。对于传统的主备模式或者一主多备模式,我们都需要考虑的问题,就是与备机保持强同步还是异步复制。对于强同步模式,要求主机必须把 Redolog 同步到备机之后,才能应答客户端,
2016-03-07 13:55:42 3888
转载 开源分布式NoSQL数据库系统——Cassandra
Apache Cassandra(社区内一般简称为C*)是一套开源分布式NoSQL数据库系统。它最初由Facebook开发,用于储存收件箱等简单格式数据,集Google BigTable的数据模型与Amazon Dynamo的完全分布式架构于一身。Facebook于2008将 Cassandra 开源,此后,由于Cassandra良好的可扩展性和性能,被Digg、Twitter、Hulu、Ne
2016-03-06 18:36:50 1966
转载 持续可用与CAP理论 – 一个系统开发者的观点
持续可用 本文主要针对金融数据库,认为金融数据库的持续可用包含两点:一个是强一致性;另外一个是高可用性。 数据库系统必须是强一致性的系统,这是因为数据库系统有事务ACID的基本要求,而弱一致系统无法做到。业内也有一些流行的NOSQL系统,例如各种类Dynamo系统,如开源的Cassandra,对同一个最小数据单位(同一行数据)允许多台服务器同时写入,虽然采用NWR机制处理冲突,但是
2016-03-03 13:13:37 988
转载 分布式系统的事务处理经典问题及模型
摘要:分布式系统需要在数据完整、一致性和性能间做平衡。本文系统介绍了处理分布式数据一致性的技术模型,如:Master-Slave,Master-Master,2PC/3PC,经典的将军问题,Paxos,以及Dynamo的NRW和VectorClock的模型。编者按:数据服务的高可用是所有企业都想拥有的,但是要想让数据有高可用性,就需要冗余数据写多份。写多份的问题会带来一致性的问题,而一
2016-03-03 11:19:41 1382
转载 高一致性分布式数据库系统之实现
1 背景 2 问题一:数据一致性 3 问题二:分区可用性 4 问题三:性能 5 总结 6 问题四:一个极端场景的分析 背景 最近,@阿里正祥(阳老师)发了上面的一条微博,谁知一石激起
2016-03-02 19:51:56 3804
转载 ZooKeeper架构设计及其应用要点
ZooKeeper是一个开源的分布式服务框架,它是Apache Hadoop项目的一个子项目,主要用来解决分布式应用场景中存在的一些问题,如:统一命名服务、状态同步服务、集群管理、分布式应用配置管理等,它支持Standalone模式和分布式模式,在分布式模式下,能够为分布式应用提供高性能和可靠地协调服务,而且使用ZooKeeper可以大大简化分布式协调服务的实现,为开发分布式应用极大地降低了成本。
2016-02-28 16:09:34 905
转载 ActiveMQ持久化方式
消息持久性对于可靠消息传递来说应该是一种比较好的方法,有了消息持久化,即使发送者和接受者不是同时在线或者消息中心在发送者发送消息后宕机了,在消息中心重新启动后仍然可以将消息发送出去,如果把这种持久化和ReliableMessaging结合起来应该是很好的保证了消息的可靠传送。消息持久性的原理很简单,就是在发送者将消息发送出去后,消息中心首先将消息存储到本地数据文件、内存数据库或者远程数据库
2016-02-25 11:38:16 6951 2
转载 Redis与Memcached的区别
传统MySQL+ Memcached架构遇到的问题 实际MySQL是适合进行海量数据存储的,通过Memcached将热点数据加载到cache,加速访问,很多公司都曾经使用过这样的架构,但随着业务数据量的不断增加,和访问量的持续增长,我们遇到了很多问题: 1.MySQL需要不断进行拆库拆表,Memcached也需不断跟着扩容,扩容和维护工作占据大量开发时间。 2.Mem
2016-02-18 16:49:56 800
转载 RAID详解[RAID0/RAID1/RAID10/RAID5]
一.RAID定义RAID(Redundant Array of Independent Disk 独立冗余磁盘阵列)技术是加州大学伯克利分校1987年提出,最初是为了组合小的廉价磁盘来代替大的昂贵磁盘,同时希望磁盘失效时不会使对数据的访问受损 失而开发出一定水平的数据保护技术。RAID就是一种由多块廉价磁盘构成的冗余阵列,在操作系统下是作为一个独立的大型存储设备出现。RAID可以充分发 挥出多
2016-01-06 00:31:49 771
转载 服务器性能分析工具
Linux下具有诸多优秀的工具供我们差遣使用,帮助我们了解和分析服务器各项性能指标。A、CPU相关常用工具列举下:ps、top、iostat、vmstat、mpstat、sar 等ps:可查看某个进程占用CPU资源百分比;top:显示的信息同ps接近,但是top可以了解到CPU消耗,可以根据用户指定的时间来更新显示;iostat: 查看所有CPU的平均信息;vmstat:查
2015-12-26 15:57:52 2545
转载 从系统角度看分布式系统的挑战
在《分布式计算:原理、算法与系统》书中,1.8.1小节综述了设计和构建分布式系统时需要仔细考虑的10个方面,这10个方面也可以作为观察一个分布式系统的10个角度。设计和构建分布式系统时,以下几个方面务必仔细考虑。1)通信。这个任务包括设计适当的网络间进程通信机制。一些样例机制:远程过程调用(RPC),远程对象调用(ROI),面向流的通信和面向消息的通信。2)进程
2015-11-02 20:07:39 1739
嵌入式Linux知识培训
2009-02-17
基于Agent的智能搜索平台
2009-02-17
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人