凡客网站登陆深圳工业设计培训班

news/2025/10/8 16:29:54/文章来源:
凡客网站登陆,深圳工业设计培训班,网站可以做10000件事情吗,网络运维工程师需要具备什么证书转载自 如何设计一个高可用的运营系统 这是一篇来自粉丝的投稿#xff0c;作者【林湾村龙猫】近一年在做关于运营活动方面的设计。本文是他的关于运营活动的总结#xff0c;Hollis做了一点点修改。 概述 一个产品业务的发展总是离不开运营二字。随着业务快速的发展以及新…转载自   如何设计一个高可用的运营系统 这是一篇来自粉丝的投稿作者【林湾村龙猫】近一年在做关于运营活动方面的设计。本文是他的关于运营活动的总结Hollis做了一点点修改。 概述 一个产品业务的发展总是离不开运营二字。随着业务快速的发展以及新业务的扩充运营需求越来越大并且很多时候需要追热点因此在有限的资源下如何做到快速、准确、灵活、稳定的满足日趋增多的运营需求成了个问题。我们根据运营的四个基本要数目标、人群、门槛、激励通过对活动的抽象、建模、组件化实现了能满足80%的运营需求的自动化运营系统运营产品同学只需要通过一份配置文件就可以生成一个新的活动。 引子 通常我们做一个活动我们需要做什么 我们需要UI设计、前端排版、接口定义、数据库创建、测试流程等等。这样下来整个流程快一点上一个活动大概一周左右慢一点可能两周左右。 但很多时候一个活动的生命周期可能就一周、一个月左右。我们是否有必要花如此大的开发代价去做这样事情一个活动如此那十个一百个呢。 我们先来通过三个活动来了解一下活动的本质。 活动1为了拉新针对老用户每拉来一个人奖励20元的额度提升。 活动2为了拉GMV针对老用户每还款xx元奖励多少优惠券。 活动3为了拉绑卡针对全部用户完成绑卡就有机会抢100张1000元现金券。 ... 我们可以发现活动的四个要素人群、目标、门槛、激励 我们可以用一句话概括运营活动 针对什么人群我们想要达到什么目标设置什么样的门槛规则最后给用户什么样的激励措施。 活动生命周期这么短我们是否可以以比较小的开发代价来完成活动的开发呢 是否针对某个业务的一个活动开发完我可以快速的复用到其他业务上呢 在这些活动的开发中我们遇到了挑战和难题 可维护性差活动的生命周期短活动下线接口、数据库废弃但代码遗留代码维护性差。 开发效率低重复开发、开发效率低、无法复用。每个活动新建接口、新建数据库表 可扩展性不高每个活动只能运用到自己的业务上无法快速复用到其他业务。 性能和监控: 无可靠的数据监控、性能低下。 安全低没有做接口签名、接口限流等等容易被刷。 运营要做什么 于是我花了一段时间来系统性的来梳理运营体系相关东西通过已经做了什么来思考我们将来怎么做 接入业务有了具体的产品我们才有运营他的基础。 运营活动有了具体的业务通过运营活动来运营业务。 用户触达活动出来后我们需要告知用户才行。 数据分析活动效果如何我们需要分析数据改进我们的方案。 监控告警系统本身不是100%可靠我们需要一些仪表盘来监控我们的系统。 安全/防刷运营是有激励措施的有利益需要防止恶意侵入。 基础能力通过抽象化、工具化提高开发效率。 组件化系统是否有个可视化的界面以便于运营人员的快速接入呢。 根据已做的活动经验和遇到的问题让我不断的思考我该如何去优化该运营系统来提高开发效率、安全、和性能。最后确定的一个大方向 平台化、标准化、配置化、组件化。 系统架构设计 从上往下看 前端层做前后分离动静分离、接入按钮触发统计系统、组件化模块。 网关层接入协议适配、签名校验接口监控统计、限流等等。保障接口安全。 逻辑层分三个子层。 第一层接入统一配置中心接口标准统一化、插件化、组件化常用模块。消息处理引入观察者抽象公用模块。 第二层根据运营四要素抽象出规则集绑卡还款等等、奖励集(优惠券、实物等等)构成活动主逻辑。 第三层抽象所有活动储存结构标签服务、配置、监控、分布式锁计数器以服务形式提供给上层调用。 基础平台一些依赖的基础能力比如用户信息、订单信息、平台优惠券系统、基础推送能力等等。 存储层所有活动数据以统一结构存储。 从左往右看 一个活动可以快速复用到其他业务。 将活动通过广告系统、消息推送系统等推送出去。通过数据分析系统做数据分析和优化活动流程。 说明几个点 1.活动路由 所有接口统一通过SaleService.handler接入 根据活动ID与方法找到对应执行方法。 参考MVC的路由方式 通过反射代理模式实现 这样做的一些好处 由于活动的什么周期短可以通过对配置的更改调整接口的有无。维护方便。 可以很方便的做一些公共校验或埋一些钩子比如是否限制登录、是否过期等 可以与配置系统深度整合。 做一些接口监控和拦截。   2. mq消息消息的解耦 观察者模式 对修改关闭对扩展开放 3.统一配置中心 可以参考之前写的统一配置中心 这里可以优化的点是引入版本号先更新配置新的版本号到redis然后再更新每个配置的版本号id, 客户端来取配置的时候先取配置的版本在根据版本号配置key去redis中取配置内容这样可以平滑的将缓存配置切换到新的缓存配置。 4.关于组件化 一个活动通常可以看成若干个组件组成。 每一个组件又有他自己的特性。 前后端如何通过组件交互 最好能在OA编辑就完美了 最后通过一些配置可以快速的上线一些活动无需开发接入做到自动化运营。 一些个人观点 程序的开发应该是一个搭积木的过程一些小的模块组合成一个中等模块若干中等模块组合成一个系统若干系统组合成一个业务等等。 一个大的问题可以分层分模块成若干小问题解决若干小问题最后解决大问题。 了解业务才能做出更好的系统设计。 系统设计要充分考虑到性能、可用性、可扩展性、可伸缩性、安全性等。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/931704.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

深圳自助网站建设做网站的程序

在学习之前,一直以为WebService就是一个工具,在两个服务器之间建立一个通信,帮我们把需要传输的数据组织成规范的XML数据并发送到目的地,实际情况也确实是这样的,不过更高级一点的是,XFire不但可以帮我们生成XML发送,而且可以在接收了xml之后还可以直接返回对象给我们用…

【学习记录】Django Channels + WebSocket 异步推流编写常用命令汇总

【学习记录】Django Channels + WebSocket 异步推流编写常用命令汇总pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: &qu…

边缘数据库近期想法(2)

近期读的这几篇论文主要是两种:对于边缘网络一些事务处理或的系统架构,其中关键在于协议的设计:边缘服务器上可扩展的数据管理、在无服务器的边缘网络架构可靠交易 一些大众研究内容适应性部署在边缘网络中以此提高…

方法-课后作业1

一、随机数生成实践 1. 自定义算法生成随机数:按纯随机数发生器参数(Modulus=2-1,Multiplier=16807,C=0),以公式xₙ₊₁=(a*xₙ + c) mod m编写方法,生成1000个随机整数,确定种子后循环计算即可。 2. 对比多种…

AgpdParty

AgpdParty3. 枚举类型 (1) 数据类型 typedef enum _eAGPMPARTY_DATA_TYPE {AGPMPARTY_DATA_TYPE_PARTY = 0, } eAGPMPARTY_DATA_TYPE;目前只定义了 Party 数据类型。(2) 经验分配类型 typedef enum _AgpmPartyCalcExpT…

io软件的层次结构

越往上越接近用户,每一次会利用下层提供的服务实现某些功能(类似计算机网络) 用户层软件 用户层软件实现与用户交互的借口,用户可以直接使用该层提供的,与io操作相关的库函数 用户层讲用户请求翻译成格式化的io请…

行业网站 cms手机版怎么用百度快照

一、题目描述 给你一个整数 n ,请你生成并返回所有由 n 个节点组成且节点值从 1 到 n 互不相同的不同 二叉搜索树 。可以按 任意顺序 返回答案。 示例 1: 输入:n 3 输出:[[1,null,2,null,3],[1,null,3,2],[2,1,3],[3,1,null,nul…

白城网站建设公司网站做seo第一步

文章目录 缓冲流字节缓冲流字符缓冲流 转换流InputStreamReader类OutputStreamWriter类 序列化ObjectOutputStream类ObjectInputStream类 打印流 缓冲流 缓冲流,也叫高效流,是对4个基本的 FileXxx 流的增强,所以也是4个流 基本原理: 缓冲流的…

2025年- H57-Lc165--994.腐烂的橘子(图论,广搜)--Java版 - 教程

2025年- H57-Lc165--994.腐烂的橘子(图论,广搜)--Java版 - 教程pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "C…

深入解析:Python应用函数的定义与调用(一)

深入解析:Python应用函数的定义与调用(一)2025-10-08 16:06 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: blo…

3,信号与槽机制 - 教程

3,信号与槽机制 - 教程pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", &qu…

课后思考及作业:方法

阶乘出现负数? 在计算机中计算阶乘时出现负数,通常是由于整数溢出导致的。数据类型储存空间不够 ( int ) ( Math.random() * 6 ) //产生 0 – 5之间的随机数 查看一下JDK中System.out.println()方法,你发现了什么?…

成都市网站建设服务商公司网站建设专家

写在前面 考试整理相关笔记博文内容涉及Linux 虚拟化常见管理操作以及部分调优配置理解不足小伙伴帮忙指正 不必太纠结于当下,也不必太忧虑未来,当你经历过一些事情的时候,眼前的风景已经和从前不一样了。——村上春树 使用工具进行调优 可以…

2025国庆Day7

模拟赛 T1 将所有ai=bi的数取出来 这些数的mex即为答案 然后对于每个i,判定ai,bi是否等于答案 相当于固定某些位置 答案就是2^cnt cnt是没被固定的位置的数量 #include<iostream> #include<cstdio> #incl…

免费发布信息的网站广州手机网站建设公司排名

webpackvue实现TODO慕课网课程笔记 课程目的&#xff1a; 前端工程&#xff1a;讲明一些前端基础的概念&#xff1b;如何搭建一个工程&#xff0c;一个工程解决了哪些问题 webpack&#xff1a;预计未来前端开发必备的基础 vue&#xff1a;相对于react使用比较简单方便&#xf…

月嫂面试题

准备一份全面的月嫂面试题,能帮助你在面试时更有条理地评估候选人。下面我为你整理了一份详尽的面试问题清单和参考答案,涵盖了专业知识、工作习惯和情景应变等多个方面。你可以根据自身需求灵活选用。 📝 月嫂面试…

深入理解 JSX:React 的核心语法 - 实践

深入理解 JSX:React 的核心语法 - 实践pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Mo…

对顶堆维护区间中位数板子

对顶堆维护区间中位数板子对顶堆维护区间中位数板子:每个操作复杂度:O(logn)点击查看代码 //加入a[p]的值:sum1,sum2为统计>mid与<=mid数之和分别是多少,l,r为取的数的区间范围 void add(ll p){if(a[p]>m…

AXURE-动态面板 - 实践

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

把握一个Makefile的脉络

首先列出其中的target:grep -E ^[^: \t]+: Makefile grep -E ^[a-zA-Z0-9_.-]+: Makefile grep -E ^[^[:space:]:]+: Makefile grep -P ^[^\s:]+: Makefile-E和-P-E --extended-regexp Interpret PATTERNS as extended…