这两年业界最流行的技术架构话题已经从前后端分离,变成了分布式、微服务、DDD了。微服务架构适合所有的公司吗,业务场景演变到了什么地步才需要考虑上微服务呢?毕竟选择技术架构之前应该考虑业务是否与之匹配,否则分布式、微服务这类繁重的架构设计对一些公司来说就变成了屠龙之技,反而成为一线开发团队的负担。
2004年Eric Evans 发表《领域驱动设计——软件核心复杂性应对之道》(Domain-Driven Design –Tackling Complexity in the Heart of Software),简称Evans DDD,领域驱动设计思想进入软件开发者的视野。领域驱动设计分为两个阶段:
1-6是一期内容,神通交接前已完成。7-10是二期内容,属于后续功能扩充。11是待完成功能,12是附加的会员管理方面的功能。
针对传统超市购物车结账排队时间长、付款效率低的问题,提出了一种更符合现代社会人们购物方式-基于RFID的自助收银系统。习惯了快节奏生活的人们都会选择自助收银机结账,理由显而易见:自助收银机结账很方便,几乎不用排队,也不用近距离和收银员接触,在防疫时期特别感觉安心。而且自助结账对每件物品的售价更是一次清晰地核对,最终需支付合计购物支出自己也更加清晰明了;这两年来,越来越多的智能设备应用在我们的生活领域里,为我们的生活提供了很多智能和便利。自助收银机从几年前就陆续涌入到各地商场、超市、便利店,自去年疫情发生后自助收银的需求比例更是呈直线上升趋势。自助收银机的启用,不仅节约了超市的人力开支成本,也从根本上提升了超市的购物支付效率,在这个快节奏的社会里,智能自助收银机也从根本上提升了超市等购物场所的服务质量。
听说DDD-“领域驱动开发”已经很久了,园子里面已经有不少大牛写过博文介绍,但我一直没有尝试过,直到今年公司的一个项目出现数据库移植,原来的业务逻辑都写在SqlServer的存储过程中,现在要移植到PostgreSQL中,才真切的体会到,再继续走“表驱动开发”的模式,没有好前途了。于是,花了几个星期,来实践一下领域驱动开发这种开发模式。 征得《领域对象驱动开发:来吧,让我们从对象开始吧》原文作者的同意,我选择文中的“超市收银”业务场景,开发了一个“超市管理系统”--PDF.NET Supe
从舒服的懒人沙发到正襟危坐的办公桌,再到三五好友一起嗨的休闲场所,随时随地加入Wi-Fi已成为我们生活节奏的一部分。Wi-Fi,这个看不到也摸不着的小东西,从它问世以来,已经大大影响了我们的生活、学习和工作。桌上的网线不见了,高移动性电子设备取而代之地默默出现。作为使用者,我们真的了解这些产品么?
随着人工智能识别技术的发展,生物特征识别技术在应用领域有着广泛的应用,其中之一就是人脸识别。在学校、企业、零售、景区等场景落地应用,那在智能应用时代,人脸识别技术在应用领域有着怎么样的用途?
求教各位老铁们,用户中心项目某一功能在压测下到达4000的TPS,这算是什么水准?薪资可以拿到20K+吗?
不久前,亚马逊获得了一项新技术专利,该技术使用手部识别技术来跟踪无收银员杂货店中的购物者,也就是说,购物者将挥手告别的不仅只有信用卡,还有“脸”。
闲来无事,金融民工小曾做了一个简单的关于餐饮行业常见收款方式的小调研,给大家分享一下我的一些思考。
随着大数据概念的提出,新兴相关数据公司也犹如雨后春笋般出现,想象一下每早与大数据创业梦想一起醒来,这确实是一种美妙的感觉。粗浅地想象一下貌似处理大数据很容易,你只需要: 1)一个使一切工序“自动化”的想法 2)一伙能够拿出一个个算法的“数据科学家” 3)数据!大量的数据! 如果你已经有了一个基本的想法,而至于那些“数据科学家”们,你通常可以在和你合伙的小伙伴们中找到他们(如果没有的话,去哈佛、耶鲁、伯克利或者纽约 大学这样的高校碰碰运气吧)。 万事具备,只欠东风,那么问题来了,该如何找到数据呢?通常
有赞零售 App 上线至今,为了降低商家硬件迁移成本,同时提高商家硬件采购的选择多样性,陆陆续续对接了市面上 Top 20+ 的智能硬件,包括打印机、电子秤、扫码枪、摄像头、一体机等, 在硬件对接过程中团队投入了大量的人力进行支持,受限于硬件架构不成体系、硬件类目划分不清晰、通信协议多样性、多端重复适配造轮子等因素,导致硬件线上问题较多,且投入的开发成本很高,也影响了商家的正常经营。为了彻底解决这些问题,提高新设备对接效率,并确保硬件交互质量,有赞零售移动团队对硬件体系做了几次重构演进,目前一款新硬件的对接与适配成本已经控制在一到两个工作日内,相较2019年人力投入降低了50%。同时通过不断完善硬件 FAQ 文档,协助商家与硬件支持同学快速定位解决问题,硬件开发同学直接处理的线上问题数量相较2019下半年环比下降55%,技术支持同学对接的硬件问题也环比下降了33%,提效比较明显。
无论我们使用单体、SOA、微服务、中台或者其他架构,都需要解决如何组织代码这个问题,DDD 并不是一个技术,而是指导我们组织代码的一种思想,这种思想也并不是凭空出现的。
简单来说,web服务器提供页面给浏览器,而app服务器提供客户端可以调用的接口。具体而言,我们可以说:Web服务器处理HTTP请求,而app服务器基于多种不同的协议,处理应用程序的逻辑问题。以下将详细介绍它们之间的区别。Web服务器web服务器处理HTTP协议。当收到一个HTTP请求之后,web服务器会返回一个HTTP响应,比如一个HTML页面。为了处理请求,它可能响应一个静态的HTML页面、图片、重定向,或者代理(delegate)其他动态响应。这些动态响应可以由其他程序生成,包括CGI脚本,JSPs
本文整理自乐凯撒黄道泳在 Techo 大会的分享,文字部分约 5100 字。 下面,让我们一起回顾下黄老师在 Techo 大会的精彩演讲内容: 大家好!我是黄道泳。非常荣幸收到腾讯云的邀请,来给大家介绍一下腾讯云 Serverless 在乐凯撒新餐饮服务上的应用实践。 原文分享:黄道泳 整理编辑:王天云 李永程 乐凯撒是一个披萨的餐饮门店,目前在深圳、广州、上海、苏州、佛山、惠州、东莞、昆明、重庆等地拥有140多家直营门店。乐凯撒是红山资本成员企业,是红杉资本在中国投资的第一家餐饮企业。11年首
古人有个很恰当的比喻,无襄阳荆州不足以用武,无汉中则巴蜀不足以存险,无关中河南不能以豫居,形势使然也。操作系统亦是如此:无Linux,操作系统不能以服务器自居。Linux是公认的中高端服务器的主要操作系统,而且一时半会是不会被替代的。 1.高效率 很多软件只有运行在Linux上才能拥有更高的效率,例如:nginx,一个著名的Web Server,nginx虽然有官方的Windows版本,但是官方也声明了,Windows版本是试验性质,仅仅能用,不要指望有很好的性能。 2.易于裁剪 Android和IO
一家小超市,一个收银员,同时还兼着干点其他的事情,例如,打扫卫生、摆货。来买东西的人多起来了,排队很长,顾客受不了,于是增加了一个收银台,雇了一个收银员。忙的时候收银员根本没时间去打扫卫生,超市内有点脏,于是雇了一个专门打扫卫生的。随着顾客不断增加,超市也经过好几次装修,由以前的一层变成了两层,这个时候所做的事情就是不断增加收银台、收银员和打扫卫生的人。在超市运转的过程中,老板发现一个现象,有些收银台排很长的队,有些收银台排的人不多,了解后知道是因为收银台太多了,顾客根本看不到现在各个收银台的状况。对于这个现象,一 种简单的方法就是继续加收银台。但一方面,超市没地方可加收银台了,另一方面,作为老板,当然不需要雇太多的人,于是开始研究怎样让顾客了解到收银台的状况,简单地加了一个摄像头和一个大屏幕,在大屏幕上显示目前收银台的状况,这样基本解决了这个问题。排队长度差不多后,又出现了一个现象,就是有些收银台速 度明显比其他的慢,原因是排在这些收银台的顾客买的东西特别 多,于是又想了一招,就是设立专门的10件以下的通道,这样买 东西比较少的顾客就不用排太长的队了,这一招施展后,顾客的满意度明显提升,销售额也好了不少,后来就继续用这招应对团购状况、VIP 状况。在解决了上面的一些烦心事后,老板关注到了一个存在已久的现象,就是白天收银台很闲,晚上则很忙,于是从节省成本上考虑,决定实行部分员工只在晚上上班的机制,白天则关闭一些收银台,顾客仍然可以通过大屏幕看到哪些收银台是关闭的,避免走到没人的收银台去,实行这招后,成本大大降 低了。 这个生活中的例子及其解决的方法,其实和互联网网站发展过程中的一些技术是非常类似的,只是在技术层面用其他名词来 表达了而已,例如,有集群、分工、负载均衡、根据QoS分配资 源等。
近几年来,关于新零售、智慧零售的讨论一直没有停歇。在最终落地方面,作为典型零售场景,大小超市也成为了众多企业的“试验场”。
随着大数据概念的提出,新兴相关数据公司也犹如雨后春笋般出现,想象一下每早与大数据创业梦想一起醒来,这确实是一种美妙的感觉。粗浅地想象一下貌似处理大数据很容易,你只需要: 1)一个使一切工序“自动化”的想法 2)一伙能够拿出一个个算法的“数据科学家” 3)数据!大量的数据! 如果你已经有了一个基本的想法,而至于那些“数据科学家”们,你通常可以在和你合伙的小伙伴们中找到他们(如果没有的话,去哈佛、耶鲁、伯克利或者纽约大学这样的高校碰碰运气吧)。 万事具备,只欠东风,那么问题来了,该如何找到数据呢?通常有以下
引言 本文介绍数据库中的架构设计; 通常,单机是无法满足大系统对数据库的读写要求的,必须用集群的方式来解决; 引入集群意味着提升了系统的复杂度,使系统变得复杂和不好维护; 通常采用数据库负载均衡策略、读写分离策略、分库分表策略等加以优化; 负载均衡 扩展性强:当系统要更高数据库处理速度时,只要简单地增加数据库服务器就可以得到扩展; 可维护性:当某节点发生故障时,系统会自动检测故障并转移故障节点的应用,保证数据库的持续工作; 安全性: 因为数据会同步的多台服务器上,可以实现数据集的冗余,通过多份数据来保证安全
有赞零售客户端的用户是需要经营线下门店的商家,在商家的经营时间内,如果软件不能保证正常使用会导致经营效率下降,甚至客户流失。因此除了不断优化软件性能,降低崩溃率,还要做好异常情况的降级处理,比如遇到网络故障和服务器故障等情况时,软件要保证核心功能的可用性,此时软件的工作模式被称为离线模式。
故障,是每个技术人都不愿遇到,但却总会遇到的事件。程序Bug、安全漏洞、黑客攻击、服务器宕机、网络中断等诸多因素都有可能引发系统故障,使我们的业务面临瘫痪的窘境。这样的例子,国内外都在不断的发生,比如: 2020年,由于严重的全澳性IT故障,Coles的收银机全部不能联网,down机瘫痪。收银员扫不了货品顾客也不能结账,澳洲每家Coles超市都被迫暂时关闭。 2018年,上海的医疗保险信息系统就突发故障,波及上海各大医院的结算系统,致使大量市民在就医时无法正常使用医保卡,众多医院的排队窗口前纷纷大排长龙,场
OLTP(在线事务处理)支持在 ATM 和在线银行、收银机和电子商务以及我们每天与之交互的许多其他服务背后进行快速、准确的数据处理。 什么是 OLTP? OLTP 或在线事务处理允许大量人员(通常通过 Internet)实时执行大量数据库事务。 数据库事务是对数据库中数据的更改、插入、删除或查询。OLTP 系统(以及它们支持的数据库交易)推动了我们每天进行的许多金融交易,包括网上银行和 ATM 交易、电子商务和店内购物,以及酒店和航空公司预订等等。在每种情况下,数据库交易也保留为相应金融交易的记录。OLT
在我之前的文章中,讨论了云计算背后的基本概念,包括其定义,特性和各种服务模型。在本文中,我将更加详细地讨论服务模型,特别是从开发者的角度来比较IAAS和PAAS。
互联网深刻改造各行各业的“剧本”仍在持续上演,基于迅猛发展的互联网及各项前沿科技诞生的全新商业领域和优秀的商业项目也层出不穷。携巨浪涌来的O2O模式塑造着 “打车”、“社区”、“零售”、“餐饮”、“地产”等领域一个又一个的千亿级、万亿级市场。而作为O2O闭环中关键一环的移动支付,成为互联网巨头关注的重点,阿里巴巴(支付宝)、腾讯(微信支付)、百度(百度钱包)、Apple (Apple pay)以及三星(Samsung Pay)等争相涌入掘金。
本文讨论了IaaS和PaaS这两种云计算服务模型的不同,从开发人员的角度分析了IaaS和PaaS之间的主要差异。作者通过举例说明在IaaS和PaaS中,开发人员可以做什么以及他们不能做什么。IaaS提供了一个虚拟化的计算环境,包括服务器、存储和网络资源,而PaaS提供了一个完整的应用程序开发和部署平台。作者指出,PaaS将更多控制权交给开发人员,允许他们自定义操作系统、中间件、运行时和数据库等。
今天存在的许多C项目都是在几十年前开始的。 UNIX操作系统的开发始于1969年,其代码在1972年被重写为C语言。C语言实际上是为了将UNIX内核代码从汇编语言转换为更高级的语言而创建的,它使用更少的代码来完成相同的任务。 Oracle数据库开发于1977年开始,其代码在1983年从汇编重写为C,成为世界上最流行的数据库之一。 1985年Windows 1.0发布。尽管Windows源代码并不是公开的,但是它的内核大部分都是用C语言编写的,并且有一些部分在汇编中。Linux内核的开发始于1991年,也
一项代号为“旋风行动”的为期30个月的国际执法行动以Clop勒索软件团伙为目标,导致此前报道的六名成员在乌克兰被捕。6月,BleepingComputer报道称,乌克兰执法部门逮捕了参与洗钱的Clop勒索软件团伙的成员。
美国东部时间7月2日,勒索组织REvil利用IT软件供应商Kaseya发起供应链攻击,预计有数千家公司中招。 REvil勒索软件组织利用零日漏洞攻击了Kaseya基于云的MSP平台(管理服务提供商),破坏其VSA基础设施,然后向VSA内部服务器推送恶意更新,在企业网络上部署勒索软件,导致Kaseya的客户遭供应链攻击。 预计1000家企业受影响 7月3日,美国总统拜登下令情报机构全面调查此次攻击事件。据安全公司Huntress Labs称,至少有1000家企业或机构受到影响,这使得这次事件成为历史上最大的勒
随着物联网和信息化的发展,融合了物联网技术的数字化、无人化的新零售门店陆续出现在各个城市。这类新型连锁店铺提供包括无人售货、多样化快捷支付、智能补货上货等多种智慧化服务,不仅能够提高消费者购物体验,还促进门店销售,降低成本。
小超的发小保尔,做的是麻辣兔头和兔腿产品,由于吃兔兔的人群日益扩张,保尔的兔肉店很快开展了连锁式经营。
UNIX操作系统的开发始于1969年,其代码在1972年被重写为C语言。C语言实际上是为了将UNIX内核代码从汇编语言转换为更高级的语言而创建的,它使用更少的代码来完成相同的任务。
大家对堡垒机这个词应该都不陌生,但是很多IT行业的开发伙伴可接触得不多不多,毕竟它主要还是用于运维和审计。更多的伙伴只是听过这个名字,对它的功能也略知一二,但对它真正的用途和优势也并不清楚。今天先教大家堡垒机的数据库服务器怎么操作,再为大家介绍一下它的优势所在。
前段时间读了读徐哥的《内网安全攻防》,并复现了部分知识点,写篇文章记录下学习内容。
企业安全信息的威胁不一定是来自于外网的攻击,还有可能来自于内网人员和错误操作。堡垒机就是这样一种内部的安全管理系统。它能够有效地审查访问用户的登录权限,从而达到权限筛查和通过,有效避免了内网数据的风险发生。但是堡垒机一般是对运维人员进行管理,却无法做到对全网的用户进行管理,所以很多企业使用堡垒机添加数据库服务器来进行安全防范。
虽然近十年来各种存储技术飞速发展,但关系数据库由于其ACID的特性和功能强大的SQL查询,目前还是各种业务系统中关键和核心的存储系统,很多场景下高性能的设计最核心的部分就是关系数据库的设计。
门店特点 线下门店由于其业务场景的特殊性,具有图-1所示的四个鲜明特点。这四个特点,简单概括就是门店散、资源少、网络差以及规格多。门店散是指线下店数量庞大,地理位置分散。以线下的京东之家为例,全国几千家店铺分布在全国各省市、自治区、直辖市;资源少是指每个门店内IT设施资源有限,不可能像线上IDC机房那样部署多台标准服务器为门店提供IT服务;网络差是指线下门店和京东IDC机房内的网络通过公网连接,并没有稳定的专线,具有延时大,带宽小,网络抖动大等特点;规格多是指线下门店的规格非常多,根据门店售卖产
随着越来越多的企业用户将传统的业务系统迁移至虚拟化环境或是云服务商提供的云平台,数据的泄露及篡改风险变的越发严峻,针对数据安全的防护以及事后审计追溯也变得越来越困难。究其原因,主要是传统的数据库审计解决方案是通过旁路分析目标被审计数据库镜像的流量,而虚拟化环境或者云平台由于内部的虚拟交换机(Vswitch)流量很难镜像或者无法镜像,因此传统的数据库审计解决方案不足以应对虚拟化和云平台的数据库审计需求。
随着越来越多的企业用户将传统的业务系统迁移至虚拟化环境或是云服务商提供的云平台,数据的泄露及篡改风险变的越发严峻,针对数据安全的防护以及事后审计追溯也变得越来越困难。究其原因,主要是传统的数据库审计解决方案是通过旁路分析目标被审计数据库镜像的流量,而虚拟化环境或者云平台由于内部的虚拟交换机(Vswitch)流量很难镜像或者无法镜像,因此传统的数据库审计解决方案不足以应对虚拟化和云平台的数据库审计需求。 首先我们对虚拟化及云平台环境中,传统的数据库审计解决方案在典型的几种场景下的优缺点进行解析:
业务分库指的是按照业务模块将数据分散到不同的数据库服务器。例如,一个简单的电商网站,包括用户、商品、订单三个业务模块,我们可以将用户数据、商品数据、订单数据分开放到三台不同的数据库服务器上,而不是将所有数据都放在一台数据库服务器上。这样的就变成了3个数据库同时承担压力,系统的吞吐量自然就提高了。
不管是为了满足业务发展的需要,还是为了提升自己的竞争力,关系数据库厂商(Oracle、DB2、MySQL 等)在优化和提升单个数据库服务器的性能方面也做了非常多的技术优化和改进。但业务发展速度和数据增长速度,远远超出数据库厂商的优化速度,尤其是互联网业务兴起之后,海量用户加上海量数据的特点,单个数据库服务器已经难以满足业务需要,必须考虑数据库集群的方式来提升性能。
数据库服务器可以一起工作,这样如果主要的服务器失效则允许一个第二服务器快速接手它的任务(高可用性),或者可以允许多个计算机提供相同的数据(负载均衡)。理想情况下,数据库服务器能够无缝地一起工作。提供静态网页服务的网页服务器可以非常容易地通过把网页请求均衡到多个机器来组合。事实上,只读的数据库服务器也可以相对容易地组合起来。不幸的是,大部分数据库服务器收到的请求是读/写混合的,并且读/写服务器更难于组合。这是因为尽管只读数据只需要在每台服务器上放置一次,但对于任意服务器的一次写动作却必须被传播给所有的服务器,这样才能保证未来对于那些服务器的读请求能返回一致的结果。
特别申明:本文根据生产变更编写,所有ip、用户名、文件路径和文件名等敏感信息已做替换删除或打码处理。
Oracle Database Server 12c R2是行业领先的关系数据库服务器。Oracle数据库服务器Docker映像包含在Oracle Linux 7上运行的Oracle数据库服务器12.2.0.1企业版。该映像包含具有一个pdb的多租户配置中的默认数据库。
人类文明的发展史,可以说就是人造工具的发展史,单单是代步工具,就从以前的八抬大轿发展到了现代的四轮汽车,舒适程度和时间效率不知道翻了多少番。
通常我们对数据库的读和写都是在同一个数据库服务器中操作,但是当我们的数据量大的时候我们可能会考虑性能问题,那么为了提升系统性能,我们就可以通过MySQL的主从复制(读写分离)来减轻数据库的负载,并且如果当主数据库服务器宕机,我们数据库的数据也不会丢失,因为我们复制到了另外一个服务器上,甚至是多台数据库服务器(一主多从),而MySQL只支持一个主数据库多个数据库。
什么是支付系统?自古以来,所有的商业活动都会伴随着经济的收款与付款行为。随着时代的发展,记录收付款行为的方式不断迭代:古代的钱庄通过手工(算盘)记账,工业社会通过收银机机械记账……
领取专属 10元无门槛券
手把手带您无忧上云