顶流品牌全渠道服务经验加持,欧泰谱以闭环Know–how助力品牌商业绩增长 | 欧泰谱厂商评估

面对疫情冲击、行业承压、消费者需求多变等挑战,消费品零售行业企业加速向数字化转型升级,积极谋求破局发展之路。一方面,受疫情因素及经济疲软影响,消费品零售行业整体增速放缓,利润空间下滑,同时叠加行业市场份额竞争加剧,企业迫切需要通过数字化手段实现差异化、精细化运营,提升自身竞争力;另一方面,消费者的消费理念和消费行为不断发生改变,更加注重交互体验和个性化需求,以及便利性、及时性的需求,在触点方面也更加碎片和多元,相应驱动品牌零售企业对营销及运营模式、订单及库存管理、渠道管理、门店运营等多方面进行变革。

从实际来看,现阶段中国消费品零售数字化转型仍面临诸多问题,包括全渠道营销、全渠道供应链的整合能力不足;智能商品管理、智能门店运营决策等环节数字化改造的力度较为薄弱等。因此,消费品零售行业企业需要借助人工智能、大数据、云计算等数字技术对业务流程持续变革,重塑价值链各个环节业务模式,实现顾客体验升级、企业运营效率提升、经营效益增长。

2022年11月,爱分析将正式发布《2022爱分析·消费品零售数字化厂商全景报告》。爱分析综合考虑企业关注度、行业落地进展等因素,选取其中5个特定市场进行重点分析。本报告面向中大型企业决策层、市场、品牌、销售、渠道、运营、电商、客户关系管理等部门负责人。通过对各个特定市场的需求定义和代表厂商的能力解读,为消费品零售企业的转型规划与厂商选型提供参考。

传统CRM服务主要聚焦于对客户满意度、忠诚度的管理,通过会员体系管理建立与客户之间的粘性,但是存在人群覆盖受限、数据整合与潜能挖掘不足、洞察缺乏系统性、运营效能低等问题,无法最大化消费者价值。在“人、货、场”的消费品零售三要素中,相较于“人”,“货、场”的数字化启动更早,数字化程度更高,因此,近年来品牌商不断强化对消费者资产的运营,在借助CDP等营销工具对全渠道数据采集、整合基础上,围绕消费者全生命周期的不同阶段进行精细化运营,促进全域人群价值增长、经营效率提升及品牌业绩增长。

因此,爱分析在《2022爱分析·消费品零售数字化厂商全景报告》中,将消费者运营服务作为重点考察市场进行了深度研究,以下为消费者运营服务市场研究及欧泰谱的厂商评估内容,欢迎品鉴。

消费者运营服务定义:

消费者运营服务,指基于品牌方所拥有的、可运营的数据进行挖掘与分析,围绕消费者全生命周期提供数据分析洞察、营销及运营策略输出、策略执行等一体化数字化运营服务。消费者运营服务以品牌方提升客户数据资产管理与运营效率、效果为目标,帮助品牌方提升营销效率,实现品牌业绩的可持续、健康增长。

甲方终端用户:

市场部门、运营部门、电商(EC)部门、客户关系管理部门

甲方核心需求:

不同于工业时代,现如今,消费者数据是消费品品牌赖以生存的核心资产。伴随国内流量红利趋于见顶,私域营销与DTC持续兴起。全渠道、全生命周期、精细化的运营,已然成为各大品牌的必备能力。因此,近年来品牌方纷纷加快数字化转型,构建系统、灵活的营销科技工具是基础,更重要的是品牌方需要基于上述工具加大运营力度与深度,从而推动品牌绩效实现可持续增长。具体来说,品牌方在数据源对接-数据整合与治理-数据洞察与分析-策略输出-策略执行等环节有不同的消费者运营服务需求:

  • 数据源对接、数据整合与治理环节,品牌方需要明确知悉自身所在行业的人群及行为特征、场景与触点分布特征,以提高数据获取效率,加深对数据价值的理解。多数品牌方虽可委托第三方在合理合法的范围内进行数据抓取,也可以通过数据银行等产品获取第二方数据,引入CDP服务商进行One-ID、标签体系建立、360画像等工作,但在数据源头方面往往缺乏对不同渠道、不同触点的数据价值的系统和深刻理解,在“不知其然”的情况下,往往对后续的运营工作的深入开展形成制约。
  • 数据洞察与分析环节,品牌方需要利用数字技术实现全要素的系统分析,也要能够进行深度的专项分析,以在广度、深度方向提升洞察效果,赋能策略输出。品牌方的绩效是人、货、场三要素的系统耦合的结果。单一、部分、静态的数据分析往往顾此失彼,引发策略失效。品牌方需要对用户、产品、渠道、活动、销售终端等全要素数据进行系统及关联分析,也需要对不同时点的专项问题进行深度研究,更需要在前期策略执行后进行数据跟踪与回溯分析,以不断总结并验证规律、发现问题,从而进行策略的局部或系统优化迭代。
  • 策略输出环节,企业需要系统化、有针对性、可落地的策略支持。品牌方需要基于年度经营目标和营销日历,形成覆盖产品策略、人群运营策略、线下店铺策略、营销活动策略等的系列系统化打法,并遴选出贴合自身及当年市场实际的最佳策略,以提高年度计划落地执行的可行性。
  • 策略执行环节,品牌方需要基于策略实现高效执行及动态优化,确保效果。从策略到最终执行落地,中间存在是否能熟练运用CDP、MA等系列营销科技工具的工具型障碍,也存在对不同策略及其结果动态验证与优化的能力型障碍。策略的执行效率与效果,关乎品牌方年度营销目标的达成率。

厂商能力要求:

厂商帮助品牌方进行消费者运营,需要同时具备以下能力,以围绕消费者全生命周期实现精细化运营:

  • 厂商需要深度的行业Know-how,有全渠道、全要素、经头部客户验证的实际操盘经验。厂商需要具备对特定行业的消费者、主要玩家、市场演进趋势等有深度的认知,一方面,熟悉线下门店、电商平台、小程序、线上APP等全渠道;另一方面,有全渠道、全要素的实际操盘经验,尤其是针对特定场景的头部消费品牌的成功服务案例与经验,非常清楚地知道消费品品牌在销售过程中存在的典型问题,能够洞悉数据层面的规律与问题,输出切实有效的策略支持。
  • 厂商需要具备系统、专业的闭环服务能力。厂商需要在理念-数据挖掘-动态验证及优化的服务的链路中具备闭环能力。一方面,厂商需要有最先进的营销运营理念和经验,为策略输出提供理念指导,甚至有些跨行业共性策略能够快速复用;另一方面,厂商要能够借助AI、大数据等技术,进行数据的深度挖掘,为策略输出提供数据支撑;最后,厂商必须熟悉CDP/MA等营销科技工具,能够熟练进行人群圈选、推送、触达、效果回溯对比分析等,以动态验证及优化现有策略。
  • 厂商需要强大、稳定的服务团队。一方面,厂商需要具备完善的人才培训和激励机制,能够保证人才队伍的专业性、组织的相对稳定性;另一方面,对客户足够熟悉和了解,与客户深度绑定、协同作战,从而进入越熟悉越有洞察,越有洞察服务力越强、服务力越强服务越持久对客户越熟悉的良性循环。

入选标准:

1. 符合消费者运营服务市场定义的厂商能力要求;

2. 2021Q4至2022Q3消费者运营服务市场付费客户数量≥10个;

3. 2021Q4至2022Q3消费者运营服务市场合同收入≥5000万元。

代表厂商评估:

欧泰谱

厂商介绍:

欧泰谱(深圳)科技有限公司(以下简称“欧泰谱”)创立于2016年,是国内领先的消费者资产运营服务商。欧泰谱以数据为基础,基于深刻的行业及消费者洞察,深耕美妆、母婴、服饰、个护等行业,为行业顶尖零售品牌提供一站式营销咨询及运营服务。

产品服务介绍:

欧泰谱基于对各品牌第一方和第二方数据的分析和洞察,以提升营销效率为目的,为品牌主提供包括分析、策略、运营、咨询四大板块在内的一站式CRM营销咨询和运营服务。其中,分析、策略、运营服务,主要是基于品牌方的全渠道数据,向品牌方提供基于数据深度挖掘及行业Know-how的产品策略、人群策略、活动策略、人群圈选、营销推广与触达、效果回溯等系列闭环服务。咨询服务主要针对品牌方组织架构、系统工具、工作流程等与营销相关的数字化转型咨询,也包括数据源的构建策略等。

厂商评估:

综合而言,欧泰谱在行业Know-how及客户服务经验、闭环服务能力、服务团队与服务模式等三方面具备显著优势。

在行业Know-how及客户服务经验方面,欧泰谱深耕五大行业,拥有行业顶级客户旗下高端产品的全域服务经验。首先,欧泰谱具有对美妆、母婴、服饰、个护家清、食品饮料等行业的深刻洞察,长时间服务上述行业顶级品牌的高端系列产品,是各大品牌的核心服务商。例如,欧泰谱自2017年开始为某美妆品牌集团服务,伴随线下CRM、阿里数据银行、京东数坊、字节云图等服务模式和工具的演变,为该集团旗下众多高端美妆品牌提供CRM体系搭建、线下门店定位和诊断、会员体验和服务设计、高价值用户1V1定制化服务、抖音5A资产分析等消费者资产运营服务。通过与客户长达5年的陪跑,在助力品牌实现运营提效和获客提升的同时,促进自身消费者资产运营服务经验的沉淀。其次,熟悉各个渠道生态工具的使用,了解各渠道工具的数据定义、限制等,是多个电商平台官方认证的优秀服务商,拥有对线下渠道终端、CDP、数据银行、群聊、公众号粉丝等线上线下全渠道的消费者管理和服务经验。

在闭环服务能力方面,欧泰谱具有“招育转留”的专业服务能力。首先,欧泰谱具备多行业、多品类的消费者运营服务经验,是营销领域各种前沿理念、方法与工具的“聚集地”,开放平台效应突出,有些跨行业共性的策略甚至能够快速复用;其次,欧泰谱拥有超百人规模的数据分析团队,在大数据乃至AI建模方面有深厚积累,在行业Know-how的加持下,具有深度数据挖掘能力和出色的行业场景数据模型的解决方案能力。例如,对消费者的购买动机、潜客向消费者转化、产品偏好的消费者分群、不同群组消费者的迁移路径、产品关联绑定、提升客户复购率、会员等级升级保级等行业场景,欧泰谱都有成熟的数据分析模型和解决方案;第三,欧泰谱对领先客户的丰富实践经验,保证了欧泰谱对CDP、MA等营销科技工具使用的熟练掌握,并通过平台效应形成公司知识资产,确保服务效率;最后,欧泰谱依托行业Know-how和强大的数据分析能力,能够对既有策略持续进行动态验证、迭代优化,为客户持续探索最佳策略和业务效果。通过基于数据洞察的人群精细运营策略,可以使品牌在短期活动转化率,中期客户复购频度,长期的CLTV都比控制组有显著提升。

在服务团队与服务模式方面,形成专业团队与客户长期、深度合作的良性循环。首先,欧泰谱拥有超500名专职员工,内部有企业大学、学习知识库、解决方案案例库等知识资产,着力打造学习型团队,在知识管理建设、文化建设上对标专业大型咨询公司;其次,在服务模式层面,欧泰谱与客户多以年为单位进行深度合作,不同于其他厂商的单个团队服务多个客户的横向服务模式,欧泰谱坚持单个团队服务单个品牌的垂直服务模式,各团队与客户业务强绑定,能够清楚知道自身策略和运营执行对于客户前端销售的支持和提升情况,不仅可对自身洞察、策略及执行有效性进行直接和快速验证,持续提升专业能力,更有利于提升服务效果和客户满意度。

典型客户:

 欧莱雅集团、宝洁集团、美赞臣、蒙牛集团、资生堂集团

本文转载于网络 如有侵权请联系删除

相关文章

  • SpringCloud 初始化父子项目并集成 Consul 服务发现

    SpringCloud初始化父子项目并集成Consul服务发现准备工作IDEA2020.1JDK1.8SpringCloud版本:Hoxton.SR5SpringBoot版本:2.3.0.RELEASE安装Consulwindows安装:https://www.yuque.com/ekko/app/go38voMac安装:https://www.yuque.com/ekko/app/nzw3gi开始简介:consul的功能服务发现Key/Value存储健康检查今天我们主要来学习实践服务发现功能先到https://start.spring.io/初始化一个父项目初始化一个父项目生成之后解压,先用IDE编辑文件修改pom.xml,如下图,在底部</build>标签下切换国内阿里源<repositories> <!--阿里云主仓库,代理了mavencentral和jcenter仓库--> <repository> <id>aliyun</id> <name>aliyun</name> <ur

  • 原来Rstudio还可以这么使用,又方便了一些

    在别人的电子书,你的电子书,都在bookdown中我们讲述了bookdown用于自动化文档生成。里面涉及到一个文件Rproj用于项目管理。本身是一个很简单的文件,里面的内容一般不需要修改,只是放置在每个项目目录下即可。比如我们有个内容如下的ysx.Rproj文件,配置了一些参数,看单词都应该明白这些参数是什么含义。Version:1.0 RestoreWorkspace:Default SaveWorkspace:Default AlwaysSaveHistory:Default EnableCodeIndexing:Yes UseSpacesForTab:Yes NumSpacesForTab:2 Encoding:UTF-8 RnwWeave:Sweave LaTeX:pdfLaTeX BuildType:Website复制那么他有什么特别的应用呢?在我们之前的易生信培训课程中,R代码都以Rmarkdown的形式呈现,因为它有一个便利的地方在于Rmd中运行的代码默认以Rmd所在目录为工作目录,这样就方便设置相对路径访问文件了。因为开始学习时对命令和命令下处理文件的不熟悉,找

  • Global Times:中国的人工智能野心

    环球时报英文版“GlobalTimes”近日刊发文章“China’sAIambitions”,介绍中国一些科技巨头和初创公司在人工智能领域所取得的成就。文章以阿里小AI为例,认为中国在人工智能的某些领域其实已经走在世界前列。文章认为,即将到来的工业4.0是中国人工智能发展的一个良机。援引新智元创始人杨静的话,文章也强调中国科技公司需要更加关注在工业4.0时代作出科技突破,而不仅仅是商业利益。 以下是“China'sAIambitions”全文翻译: 题目:国内科技公司及初创企业在人工智能某些领域领先世界 中国的科技公司及初创企业与他们的海外竞争对手都在竞相开发能够超越人与机器之间界限的人工智能科技。三月份,谷歌的AlphaGo人工智能软件在围棋锦标赛中,一举击败韩国冠军李世石,令世界叹为观止。然而,中国公司也希望在工业4.0时代利用人工智能科技方面的优势,在人工智能开发上大展拳脚。 如果投资者能够预先知道一部即将上映的电影能否打破票房纪录,或者音乐制作人能够预见到什么类型的歌曲能够荣登流行音乐排行榜首,这岂不是一件很棒的事情? 上述两种情况在人工智能年代可能会成为现实,事实上

  • 一个小时学会Git

    最近要与部门同事一起做技术分享,我选择了Git,因为Git是一种在全球范围都广受欢迎的版本控制系统。在开发过程中,为了跟踪代码,文档,项目等信息中的变化,版本控制变得前所未有的重要。一、版本控制概要1.1、什么是版本控制版本控制(Revisioncontrol)是一种在开发的过程中用于管理我们对文件、目录或工程等内容的修改历史,方便查看更改历史记录,备份以便恢复以前的版本的软件工程技术。实现跨区域多人协同开发追踪和记载一个或者多个文件的历史记录组织和保护你的源代码和文档统计工作量并行开发、提高开发效率跟踪记录整个软件的开发过程减轻开发人员的负担,节省时间,同时降低人为错误简单说就是用于管理多人协同开发项目的技术。没有进行版本控制或者版本控制本身缺乏正确的流程管理,在软件开发过程中将会引入很多问题,如软件代码的一致性、软件内容的冗余、软件过程的事物性、软件开发过程中的并发性、软件源代码的安全性,以及软件的整合等问题。1.2、常用术语1)、仓库(Repository) 受版本控制的所有文件修订历史的共享数据库2)、工作空间(Workspace) 本地硬盘或Unix用户帐户上编辑的文件副本3

  • bean注入

    https://segmentfault.com/a/1190000023110150   https://www.springcloud.io/post/2022-07/overriding-initialized-beans/#gsc.tab=0   https://segmentfault.com/a/1190000042232473  

  • 2020-2021 “Orz Panda” Cup Programming Contest

    2020-2021“OrzPanda”CupProgrammingContest 比赛情况 我们一共过了道3题 本场贡献:et3_tsy:过了A,提供了H的关键修改 ​ 1427314831a:尝试写E,可惜没过 ​ Ryker0923:过了H,I 罚时:H,I各罚了一次 比赛总结 et3_tsy 这场比赛是比较考验基本功的,像CG,需要的知识储备很低,但是场上没有写,说明还是有点问题的。 1427314831a 多注意一些容易导致死循环的细节。 Ryker0923 注意计算几何精度问题。 部分题解 A.带权并查集+优先队列 其他做法(像单调栈)可能更好 I.计算几何 因为除2后只会出现0.5和0.0两种情况,double会出现精度损失,所以注意使用longlong来存。 H.思维题 C.set的使用 这道题就是说给定一个空序列,往里面放、拿东西。有两种维护,第1种维护,就是说往里面插入一个数,使得他往已经有的东西最远,一样远那么取序号小的,第2种维护,就是取出第K次是操作放入的东西。 这道题核心就是开两个set。第1个set去储存,我们当前哪些区段放是最优的。第2个se

  • 【MySQL必知必会】第四章 检索数据

    1、SELECT语句   从一个或多个表中检索信息。 2、检索单个列   输入:SELECTprod_nameFROMproducts;   输出:prod_name      Safe      Birdseed      Sling      xxxxxx   分析:从products表中检索一个名为prod_name的列。 3、分号的使用   大多数DBMS,不需要在单条语句后加分号,多条语句使用分号分隔,但是建议每条语句都加上分号。 4、大小写   SQL语句不区分大小写,但为了阅读方便,建议关键字大写,列名和表名使用小写。 5、空格   处理SQL语句时,所有空格都被忽略,SQL语句可以一行给出,也可以多行给出,多行便于阅读,建议多行。 6、检索多个列   输入:SELECTprod_id,prod_name,prod_priceFROMproducts;   输出:     prod_id  prod_name  prod_price     FB      Birdseed  10.00     FC      Carrots    2.50     SAFE     S

  • SSL协议、HTTP和HTTPS和区别

    SSL协议 SLL协议的握手过程 开始加密通信之前,客户端和服务器首先必须建立连接和交换参数,这个过程叫做握手(handshake)。 第一步,客户端给出协议版本号、一个客户端生成的随机数(Clientrandom),以及客户端支持的加密方法。   第二步,服务器确认双方使用的加密方法,并给出数字证书、以及一个服务器生成的随机数(Serverrandom)。   第三步,客户端确认数字证书有效,然后生成一个新的随机数(Premastersecret),并使用数字证书中的公钥,加密这个随机数,发给服务器。   第四步,服务器使用自己的私钥,获取客户端丝发来的随机数(即Premastersecret)。   第五步,客户端和服务器根据约定的加密方法,使用前面的三个随机数,生成"对话密钥"(sessionkey),用来加密接下来的整个对话过程。 私钥的作用   1)生成对话密钥一共需要三个随机数。   (2)握手之后的对话使用"对话密钥"加密(对称加密),服务器的公钥和私钥只用于加密和解密"对话密钥"(非对称加密),无其他作用。 &

  • 命令行批量截图Node脚本

    批量截图任务 作为一个软件工程师,不只是做好自己的本职工作(iOS),而是需要解决项目中的技术问题。这次就是解决自动截图的问题 早期公司的数据工程师利用phantomjs来截图,后期不断发现截图效率低,加之开发者团队不再维护,因此决定将截图这部分跟你剥离开来,以后方便开发维护。我就承担了这个工作 puppeteer PuppeteerisaNodelibrarywhichprovidesahigh-levelAPItocontrolChromeorChromiumovertheDevToolsProtocol.Puppeteerrunsheadlessbydefault,butcanbeconfiguredtorunfull(non-headless)ChromeorChromium. 安装问题 一开始按照往常的套路(npminstall--savepuppeteer)好几次都卡住了,后期查找资料发现切换到国内的镜像就可以顺利下载 PUPPETEER_DOWNLOAD_HOST=https://storage.googleapis.com.cnpmjs.orgnpmi--

  • mysql递归查询-案例(2)

    表数据如下 +--------+----------+------------+|cat_id|name    |parent_cid|+--------+----------+------------+|    12|美妆    |         0||     4|服装    |         0||     5|女装    |         4||     6|男

  • docker image ls 提示 “Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock

    现象描述 上次在统信Linux上费了很大力气才装上docker,当时记得是可以用了。但今天登录系统后执行dockerimagels却提示上面的问题,但切换到root账户再执行这个命令就不报错了。 root可以正常使用,普通用户不行,大概率是权限的问题,可以给这个用户加docker用户组权限。 尝试1 使用下面的命令,给用户增加权限 usermod-aGdockerwang 复制 不过执行之后,再次尝试还是提示同样的错误。不太确定是否需要更新权限(或重启)导致的。 尝试2 找到了一个另外的办法。 用了另外一个命令增加权限,同时更新了一下权限,随后执行不再报错,问题解决。 wang@wang-PC:~$ls-l/var/run/docker.sock srw-rw----1rootdocker08月2308:38/var/run/docker.sock wang@wang-PC:~$su 请输入密码 Password: 验证成功 root@wang-PC:/home/wang#gpasswd-awangdocker 正在将用户“wang”加入到“docker”组中 root@wang-

  • SpringBoot2.x搭建SpringBootAdmin2.x

    1说明 全部配置基于1.8.0_111 当前SpringBoot使用2.0.5 SpringBootAdmin基于Eureka进行Client发现,Eureka搭建参见SpringBoot2.x搭建Eureka SpringBootAdmin项目文档参见SpringBootAdmin参考文档 2创建项目 在SpringBoot项目生成器中,输入Group和Artifact,如下配置: 3编辑pom.xml文件 pom.xml中新添加如下内容: <properties> <spring-cloud.version>Finchley.RELEASE</spring-cloud.version> </properties> <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dep

  • 刷题

    1 如当输入链表{1,2,3}时, 经反转后,原链表变为{3,2,1},所以对应的输出为{3,2,1}。 1单链表的反转如何解决,三种方法,一是使用栈,二是使用两个链表,三是使用递归 importjava.util.Stack; publicclassSolution{ publicListNodeReverseList(ListNodehead){ Stack<ListNode>stack=newStack<>(); //把链表节点全部摘掉放到栈中 while(head!=null){ stack.push(head); head=head.next; } if(stack.isEmpty()) returnnull; ListNodenode=stack.pop(); ListNodedummy=node; //栈中的结点全部出栈,然后重新连成一个新的链表 while(!stack.isEmpty()){ ListNodetempNode=stack.pop(); node.next=tempNode; node=node.next; } //最后一个结

  • 多线程编程:阻塞、并发队列的使用总结

    最近,一直在跟设计的任务调度模块周旋,目前终于完成了第一阶段的调试。今天,我想借助博客园平台把最近在设计过程中,使用队列和集合的一些基础知识给大家总结一下,方便大家以后直接copy。本文都是一些没有技术含量的东西,只是做个总结,牛哥还请绕路。 老习惯,还是先跟各位纸上谈会儿兵,首先说说队列,他主要分为并发队列和阻塞队列,在多线程业务场景中使用最为普遍,我就主要结合我所做过的业务谈谈我对它们的看法,关于它们的API和官方解释就不提了。 并发队列 并发队列:最常见的业务场景就是多个线程共享同一个队列中的所有资源,就拿我们公司的业务场景来说,当用户通过多个渠道下单后,然后就会有多个不同的客户端通道同时去获取订单并处理订单,为了加快订单处理速度我们使用并发队列来充当任务源头,为了加快处理订单速度,结合多线程并发来满足需求。 并发队列没什么可说的,就是一个简单的多线程编程操作,小Demo送给各位: 1/** 2*并发队列ConcurrentLinkedQueue的使用 3*/ 4 5publicclassConcurrentQueue{ 6 7publicstaticvoidmain(Str

  • PHP垃圾回收深入理解

    PHP是一门托管型语言,在PHP编程中程序员不需要手工处理内存资源的分配与释放(使用C编写PHP或Zend扩展除外),这就意味着PHP本身实现了垃圾回收机制(GarbageCollection)。现在如果去PHP官方网站(php.net)可以看到,目前PHP5的两个分支版本PHP5.2和PHP5.3是分别更新的,这是因为许多项目仍然使用5.2版本的PHP,而5.3版本对5.2并不是完全兼容。PHP5.3在PHP5.2的基础上做了诸多改进,其中垃圾回收算法就属于一个比较大的改变。本文将分别讨论PHP5.2和PHP5.3的垃圾回收机制,并讨论这种演化和改进对于程序员编写PHP的影响以及要注意的问题。 PHP变量及关联内存对象的内部表示 垃圾回收说到底是对变量及其所关联内存对象的操作,所以在讨论PHP的垃圾回收机制之前,先简要介绍PHP中变量及其内存对象的内部表示(其C源代码中的表示)。 PHP官方文档中将PHP中的变量划分为两类:标量类型和复杂类型。标量类型包括布尔型、整型、浮点型和字符串;复杂类型包括数组、对象和资源;还有一个NULL比较特殊,它不划分为任何类型,而是单独成为一类。 所有

  • 通用triggerEvent方法

    假设有一个id为testA的a元素,然后有以下代码(jquery已存在): $(document).ready(function(){ $('#testA').on('testEvent',function(e,data1,data2,data3){ console.log(e,data1,data2,data3); }); varba=document.getElementById('testA'); ba.addEventListener('testEvent',function(e){ console.log(e); }); }); 复制 即,用两种方法监听一个自定义事件:testEvent,再看看如何触发testEvent事件: document.addEventListener('click',function(e){ $('#testA').trigger('testEvent',[2,3,4]); }); 复制 实际上只有用on监听的才能起作用,就是说用jquery的方法trigger来发事件,就只能用jquery的方法on[或者其

  • iOS UIStackView

    开篇两个参考:   1.https://www.jianshu.com/p/8270db45cfa1   2.https://spin.atomicobject.com/2016/06/22/uistackview-distribution/     实现的场景是由任意个View需要添加到这个容器里面,然后整体左对齐,也就是一次从左往右排,并且不会被拉伸。实现的方式也很简单:】 [imageEvaluateREDsetContentHuggingPriority:UILayoutPriorityRequiredforAxis:UILayoutConstraintAxisHorizontal]; 复制  使用上面设置禁止拉伸,然后再在最后的arrangeView里面增加一个空白的View来填充剩下的内容 UIView*spaceView=[[UIViewalloc]init]; [self.evaluateStackViewaddArrangedSubview:imageEvaluateRED]; [self.evaluateStackViewaddA

  • IOS开发创建开发证书及发布App应用(六)——打包应用

     6.打包应用 如下图,生成之后点击下面红框的按钮,按时间排序,然后点最新的一次生成    从右侧生成日志中找到如下图红框标识的部分,找到-output,把下面浅蓝色选中,这是app生成的文件夹路径   点击桌面,或者打开一个文件夹,最上头有个前往,点击前往文件夹     弹出如下图所示,把刚才复制的路径放进去,单击前往     展示如下图,右键压缩     这样应用就打包完毕,如下图,生成一个zip的压缩包     这个压缩包是用来上传的,放到桌面或者你知道的文件夹  

  • 操作系统的发展

    操作系统主要分成了手工操作 批处理操作分时操作 实时操作阶段 批处理阶段又分成单道批处理 和多道批处理  实时操作又分成硬实时(要求时间必须精准)软实时(要求可以有些许误差)  

  • np.mat()和np.transpose

    例子: importnumpyasnp dataSet=[] withopen('/home/lai/下载/20081023025304.plt')asfr: forlineinfr.readlines()[6:]: curline=line.strip().split(',')#字符串方法strip():返回去除两侧(不包括)内部空格的字符串;字符串方法spilt:按照制定的字符将字符串分割成序列 fltline=curline[0:2] fltline=list(map(float,fltline))#list函数将其他类型的序列转换成字符串;map函数将序列curline中的每个元素都转为浮点型 dataSet.append(fltline) a=np.mat(dataSet) a1=a.transpose() print(dataSet) print('a',a) print('a1',a1) 复制  结果: [[39.984702,116.318417],[39.984683,116.31845],[39.984686,116.318417],[39.984

  • Java通过消息队列与Python数据交流

    需求:网页上传一张图片,图片中有些数字需要确认,JavaWeb的架构通过消息中间件传递到Python端进行图片识别处理。 实验需要用到的图片: 这里需要具备的知识: SpringBoot Python RabbitMQ Docker 环境: Docker Nginx RabbitMQ 简单概括一下项目的大体结构,这里采用的是前后端分离,前端是一个简单的文件上传页面部署到Nginx,后端是SpringBoot的架构,消息队列采用的是RabbitMQ,图片识别功能交给Python处理,然后把处理好的结果返回到消息队列,最后就是Java需要结果对消息队列的消费。 java端接收图片(消息生产者)--->消息中间件--->python处理图片(消息消费者) python处理好图片(消息生产者)--->消息中间件--->java拿结果(消息消费者) 复制 环境搭建 Docker环境安装: #安装yum-utils yuminstall-yyum-utilsdevice-mapper-persistent-datalvm2 #为yum源添加docker仓库

相关推荐

推荐阅读