• 关于

    安全关联工作原理

    的搜索结果

问题

SSH 无法远程登录问题的处理思路是什么

您在购买云服务器 ECS(后续简称 ECS)Linux 服务器后,首先面临的就是如何登录和使用的问题。而由于服务器在云端,所以日常运维中通常都会基于 SSH 客户端登录服务器进行相关操...
boxti 2019-12-01 22:00:30 1833 浏览量 回答数 0

问题

TaintDroid剖析之File & Memiry & Socket级污点传播

TaintDroid剖析之File & Memiry & Socket级污点传播 作者:简行、走位@阿里聚安全 1、涉及到的代码文件 TaintDroid在File, Mem...
移动安全 2019-12-01 21:29:15 4335 浏览量 回答数 2

问题

SSH面试题

1.什么是struts2?struts的工作原理? struts2:1)经典的  mvc (Model  View  Controller) 框架                          ...
琴瑟 2019-12-01 21:46:22 3489 浏览量 回答数 0

回答

一 容器 在学习k8s前,首先要了解和学习容器概念和工作原理。 什么是容器? 容器是一种轻量级、可移植、自包含的软件打包技术,使应用程序可以在几乎任何地方以相同的方式运行。开发人员在自己笔记本上创建并测试好的容器,无需任何修改就能够在生产系统的虚拟机、物理服务器或公有云主机上运行。 容器的优势 容器使软件具备了超强的可移植能力。 对于开发人员 – Build Once, Run Anywhere 容器意味着环境隔离和可重复性。开发人员只需为应用创建一次运行环境,然后打包成容器便可在其他机器上运行。另外,容器环境与所在的 Host 环境是隔离的,就像虚拟机一样,但更快更简单。 对于运维人员 – Configure Once, Run Anything 只需要配置好标准的 runtime 环境,服务器就可以运行任何容器。这使得运维人员的工作变得更高效,一致和可重复。容器消除了开发、测试、生产环境的不一致性。 Docker概念 “Docker” 一词指代了多个概念,包括开源社区项目、开源项目使用的工具、主导支持此类项目的公司 Docker Inc. 以及该公司官方支持的工具。技术产品和公司使用同一名称,的确让人有点困惑。 我们来简单说明一下: IT 软件中所说的 “Docker” ,是指容器化技术,用于支持创建和使用容器。 开源 Docker 社区致力于改进这类技术,并免费提供给所有用户,使之获益。 Docker Inc. 公司凭借 Docker 社区产品起家,它主要负责提升社区版本的安全性,并将技术进步与广大技术社区分享。此外,它还专门对这些技术产品进行完善和安全固化,以服务于企业客户。 借助 Docker,您可将容器当做轻巧、模块化的虚拟机使用。同时,您还将获得高度的灵活性,从而实现对容器的高效创建、部署及复制,并能将其从一个环境顺利迁移至另一个环境,从而有助于您针对云来优化您的应用。 Docker有三大核心概念: 镜像(Image)是一个特殊的文件系统,提供容器运行时所需的程序、库、配置等,构建后不会改变 容器(Container)实质是进程,拥有自己独立的命名空间。 仓库(Repository)一个仓库可以包含多个标签(Tag),每个标签对应一个镜像 容器工作原理 Docker 技术使用 Linux 内核和内核功能(例如 Cgroups 和 namespaces)来分隔进程,以便各进程相互独立运行。这种独立性正是采用容器的目的所在;它可以独立运行多种进程、多个应用,更加充分地发挥基础设施的作用,同时保持各个独立系统的安全性。 二 Kubernetes入门知识指南 Kubernets的知识都可以在官方文档查询,网址如下: https://kubernetes.io/zh/docs/home/ Kubernetes基础知识 Kubernetes是什么? Kubernetes 是一个可移植的、可扩展的开源平台,用于管理容器化的工作负载和服务,可促进声明式配置和自动化。Kubernetes 拥有一个庞大且快速增长的生态系统。Kubernetes 的服务、支持和工具广泛可用。 为什么需要 Kubernetes 容器是打包和运行应用程序的好方式。在生产环境中,您需要管理运行应用程序的容器,并确保不会停机。例如,如果一个容器发生故障,则需要启动另一个容器。如果由操作系统处理此行为,会不会更容易? Kubernetes 为您提供: 服务发现和负载均衡 Kubernetes 可以使用 DNS 名称或自己的 IP 地址公开容器,如果到容器的流量很大,Kubernetes 可以负载均衡并分配网络流量,从而使部署稳定。 存储编排 Kubernetes 允许您自动挂载您选择的存储系统,例如本地存储、公共云提供商等。 自动部署和回滚 您可以使用 Kubernetes 描述已部署容器的所需状态,它可以以受控的速率将实际状态更改为所需状态。例如,您可以自动化 Kubernetes 来为您的部署创建新容器,删除现有容器并将它们的所有资源用于新容器。 自动二进制打包 Kubernetes 允许您指定每个容器所需 CPU 和内存(RAM)。当容器指定了资源请求时,Kubernetes 可以做出更好的决策来管理容器的资源。 自我修复 Kubernetes 重新启动失败的容器、替换容器、杀死不响应用户定义的运行状况检查的容器,并且在准备好服务之前不将其通告给客户端。 密钥与配置管理 Kubernetes 允许您存储和管理敏感信息,例如密码、OAuth 令牌和 ssh 密钥。您可以在不重建容器镜像的情况下部署和更新密钥和应用程序配置,也无需在堆栈配置中暴露密钥。 Kubernetes 组件 初学者首先要了解Kubernetes的基本概念,包括master、node、pod等。 Master Master是Kubernetes集群的大脑,运行着的守护进程服务包括kube-apiserver、kube-scheduler、kube-controller-manager、etcd和Pod网络等。 kube-apiserver 主节点上负责提供 Kubernetes API 服务的组件;它是 Kubernetes 控制面的前端。 kube-apiserver 在设计上考虑了水平扩缩的需要。 换言之,通过部署多个实例可以实现扩缩。 etcd etcd 是兼具一致性和高可用性的键值数据库,可以作为保存 Kubernetes 所有集群数据的后台数据库。 您的 Kubernetes 集群的 etcd 数据库通常需要有个备份计划。 kube-scheduler 主节点上的组件,该组件监视那些新创建的未指定运行节点的 Pod,并选择节点让 Pod 在上面运行。 调度决策考虑的因素包括单个 Pod 和 Pod 集合的资源需求、硬件/软件/策略约束、亲和性和反亲和性规范、数据位置、工作负载间的干扰和最后时限。 kube-controller-manager 在主节点上运行控制器的组件。 从逻辑上讲,每个控制器都是一个单独的进程,但是为了降低复杂性,它们都被编译到同一个可执行文件,并在一个进程中运行。 这些控制器包括: 节点控制器(Node Controller): 负责在节点出现故障时进行通知和响应。 副本控制器(Replication Controller): 负责为系统中的每个副本控制器对象维护正确数量的 Pod。 端点控制器(Endpoints Controller): 填充端点(Endpoints)对象(即加入 Service 与 Pod)。 服务帐户和令牌控制器(Service Account & Token Controllers): 为新的命名空间创建默认帐户和 API 访问令牌. 云控制器管理器-(cloud-controller-manager) cloud-controller-manager 运行与基础云提供商交互的控制器 cloud-controller-manager 仅运行云提供商特定的控制器循环。您必须在 kube-controller-manager 中禁用这些控制器循环,您可以通过在启动 kube-controller-manager 时将 --cloud-provider 参数设置为 external 来禁用控制器循环。 cloud-controller-manager 允许云供应商的代码和 Kubernetes 代码彼此独立地发展。在以前的版本中,核心的 Kubernetes 代码依赖于特定云提供商的代码来实现功能。在将来的版本中,云供应商专有的代码应由云供应商自己维护,并与运行 Kubernetes 的云控制器管理器相关联。 以下控制器具有云提供商依赖性: 节点控制器(Node Controller): 用于检查云提供商以确定节点是否在云中停止响应后被删除 路由控制器(Route Controller): 用于在底层云基础架构中设置路由 服务控制器(Service Controller): 用于创建、更新和删除云提供商负载均衡器 数据卷控制器(Volume Controller): 用于创建、附加和装载卷、并与云提供商进行交互以编排卷 Node 节点组件在每个节点上运行,维护运行 Pod 并提供 Kubernetes 运行环境。 kubelet 一个在集群中每个节点上运行的代理。它保证容器都运行在 Pod 中。 kubelet 接收一组通过各类机制提供给它的 PodSpecs,确保这些 PodSpecs 中描述的容器处于运行状态且健康。kubelet 不会管理不是由 Kubernetes 创建的容器。 kube-proxy kube-proxy 是集群中每个节点上运行的网络代理,实现 Kubernetes Service 概念的一部分。 kube-proxy 维护节点上的网络规则。这些网络规则允许从集群内部或外部的网络会话与 Pod 进行网络通信。 如果有 kube-proxy 可用,它将使用操作系统数据包过滤层。否则,kube-proxy 会转发流量本身。 容器运行环境(Container Runtime) 容器运行环境是负责运行容器的软件。 Kubernetes 支持多个容器运行环境: Docker、 containerd、cri-o、 rktlet 以及任何实现 Kubernetes CRI (容器运行环境接口)。 Pod 在Kubernetes中,最小的管理元素不是一个个独立的容器,而是Pod。Pod是管理,创建,计划的最小单元. 一个Pod相当于一个共享context的配置组,在同一个context下,应用可能还会有独立的cgroup隔离机制,一个Pod是一个容器环境下的“逻辑主机”,它可能包含一个或者多个紧密相连的应用,这些应用可能是在同一个物理主机或虚拟机上。 Pod 的context可以理解成多个linux命名空间的联合 PID 命名空间(同一个Pod中应用可以看到其它进程) 网络 命名空间(同一个Pod的中的应用对相同的IP地址和端口有权限) IPC 命名空间(同一个Pod中的应用可以通过VPC或者POSIX进行通信) UTS 命名空间(同一个Pod中的应用共享一个主机名称) 同一个Pod中的应用可以共享磁盘,磁盘是Pod级的,应用可以通过文件系统调用。 由于docker的架构,一个Pod是由多个相关的并且共享磁盘的容器组成,Pid的命名空间共享还没有应用到Docker中 和相互独立的容器一样,Pod是一种相对短暂的存在,而不是持久存在的,正如我们在Pod的生命周期中提到的,Pod被安排到结点上,并且保持在这个节点上直到被终止(根据重启的设定)或者被删除,当一个节点死掉之后,上面的所有Pod均会被删除。特殊的Pod永远不会被转移到的其他的节点,作为替代,他们必须被replace. 三 通过kubeadm方式创建一个kubernetes 对kubernetes的概念和组件有所了解以后,就可以通过kubeadm的方式创建一个kubernetes集群。 安装前准备工作 创建虚拟机 创建至少2台虚拟机,可以在本地或者公有云。 下载部署软件 需要下载的软件包括calico、demo-images、docker-ce、kube、kube-images、kubectl、metrics-server 安装部署 具体安装过程参考官网文档: https://kubernetes.io/zh/docs/reference/setup-tools/kubeadm/kubeadm/ 四 安装后的练习 安装后详读官方文档,做下面这些组件的练习操作,要达到非常熟练的程度。 Node Namespace Pod Deployment DaemonSet Service Job Static Pod ConfigMap Secrets Volume Init-containers Affinity and Anti-Affinity Monitor and logs Taints and Tolerations Cordon and Drain Backing up etcd 这些内容都非常熟练以后,基本就达到了入门的水平。
红亮 2020-03-02 11:09:17 0 浏览量 回答数 0

回答

新地址 24题 Starters可以理解为启动器,它包含了一系列可以集成到应用里面的依赖包,你可以一站式集成 Spring 及其他技术,而不需要到处找示例代码和依赖包。如你想使用 Spring JPA 访问数据库,只要加入 spring-boot-starter-data-jpa 启动器依赖就能使用了。Starters包含了许多项目中需要用到的依赖,它们能快速持续的运行,都是一系列得到支持的管理传递性依赖。 23题 Spring Boot 的核心配置文件是application(.yml 或者 .properties) 和 bootstrap(.yml 或者 .properties) 配置文件。boostrap 由父 ApplicationContext 加载,比 applicaton 优先加载,boostrap 里面的属性不能被覆盖。application 配置文件主要用于 Spring Boot 项目的自动化配置。bootstrap 配置文件的应用场景:使用 Spring Cloud Config 配置中心时,这时需要在 bootstrap 配置文件中添加连接到配置中心的配置属性来加载外部配置中心的配置信息;一些固定的不能被覆盖的属性;一些加密/解密的场景。 22题 优点:快速构建项目;对主流开发框架的无配置集成;starters自动依赖与版本控制;大量的自动配置,简化开发,也可修改默认值;无需配置XML,无代码生成,开箱即用;项目可独立运行,无须外部依赖Servlet容器;提供运行时的应用监控;与云计算的天然集成。缺点:集成度较高,使用过程中不太容易了解底层。 21题 Spring Boot的初衷就是为了简化spring的配置,使得开发中集成新功能时更快,简化或减少相关的配置文件。Spring Boot其实是一个整合很多可插拔的组件(框架),内嵌了使用工具(比如内嵌了Tomcat、Jetty等),方便开发人员快速搭建和开发的一个框架。 20题 当程序创建对象、数组等引用类型实体时,系统会在堆内存中为之分配一块内存区,对象就保存在内存区中,不需要显式的去释放一个对象的内存,而是由虚拟机自行执行。在JVM 中,有一个垃圾回收线程,它是低优先级的,在正常情况下是不会执行的,只有在虚拟机空闲或者当前堆内存不足时,才会触发执行,标记那些没有被任何引用的对象,并将它们添加到要回收的集合中,进行回收。 19题 HashMap线程不安全,HashTable线程安全。HashMap允许有一个key为null,多个value为null;而HashTable不允许key和vale为null。继承类不一样,HashMap继承的是AbstractMap,HashTable继承的是Dictionary。初始容量不一样。使用的hashcode不一样。内部遍历方式的实现不一样。 18题 作用:内容可见性和禁止指令重排。内存可见性:某线程对 volatile 变量的修改,对其他线程都是可见的,即获取 volatile 变量的值都是最新的;禁止指令重排:重排序在单线程下一定能保证结果的正确性,但是在多线程环境下,可能发生重排序影响结果,若用volatile修饰共享变量,在编译时,会在指令序列中插入内存屏障来禁止特定类型的处理器重排序。使用:当一个线程需要立刻读取到另外一个线程修改的变量值的时候,我们就可以使用volatile。区别:volatile是变量修饰符,而synchronized则作用于一段代码或者方法;volatile只是在线程内存和main memory(主内存)间同步某个变量的值,而synchronized通过锁定和解锁某个监视器同步所有变量的值。显然synchronized要比volatile消耗更多资源;synchronized 关键字可以保证变量原子性和可见性,volatile 不能保证原子性。 17题 非公平主要表现在获取锁的行为上,并非是按照申请锁的时间前后给等待线程分配锁的 ,每当锁被释放后 ,任何一个线程都有机会竞争到锁,这样做的目的是为了提高执行性能 ,缺点是可能会产生线程饥饿现象 。 16题 如果线程遇到了 IO 阻塞,无能为力,因为IO是操作系统实现的,Java代码并没有办法直接接触到操作系统。如果线程因为调用 wait()、sleep()、或者 join()方法而导致的阻塞,可以中断线程,并且通过抛出 InterruptedException 来唤醒它。 15题 原子操作就是无法被别的线程打断的操作。要么不执行,要么就执行成功。在Java中可以通过锁和循环CAS的方式来实现原子操作。从JDK 1.5开始提供了java.util.concurrent.atomic包,这个包中的原子操作类提供了一种用法简单、性能高效、线程安全地更新一个变量的方式。 14题 wait()是Object类的方法,所以每一个对象能使用wait()方法。sleep()是Thread类中的静态方法。sleep不会释放锁,但会让出cpu,sleep会在指定的休眠时间后自动唤醒。wait则会释放锁,让出系统资源,并且加入wait set中,wait不会自动唤醒,而需要notify()或者notifyAll()唤醒。sleep和wait都可以被中断,使用sleep需要捕获异常。wait与notify、notifyAll只能在同步代码块中使用,而sleep可以在任何地方使用。 13题 Synchronized 是由 JVM 实现的一种实现互斥同步的一种方式,查看编译后的字节码,会发现被 Synchronized 修饰过的程序块,在编译前后被编译器生成了monitorenter 和 monitorexit 两个字节码指令。在虚拟机执行到 monitorenter 指令时,首先要尝试获取对象的锁:如果这个对象没有锁定,或者当前线程已经拥有了这个对象的锁,把锁的计数器+1;当执行 monitorexit 指令时将锁计数器-1;当计数器为0时,锁就被释放了。如果获取对象失败了,那当前线程就要阻塞等待,直到对象锁被另外一个线程释放为止。Java 中 Synchronize 通过在对象头设置标记,达到了获取锁和释放锁的目的。 12题 Mybatis 通过动态代理,为需要拦截的接口生成代理对象以实现接口方法拦截功能,每当执行这 4 种接口对象的方法时,就会进入拦截方法,具体就是InvocationHandler 的 invoke()方法,只会拦截那些你指定需要拦截的方法。 实现方法:1.编写Intercepror接口的实现类;2.设置插件的签名,告诉mybatis拦截哪个对象的哪个方法;3.最后将插件注册到全局配置文件中。 11题 Mybatis可以映射枚举类,不单可以映射枚举类,Mybatis可以映射任何对象到表的一列上。映射方式为自定义一个TypeHandler,实现TypeHandler的setParameter()和getResult()接口方法。TypeHandler 有两个作用,一是完成从 javaType至jdbcType 的转换,二是完成jdbcType至javaType的转换,体现为 setParameter()和getResult()两个方法,分别代表设置sql问号占位符参数和获取列查询结果。 10题 Mybatis使用RowBounds对象进行分页,也可以直接编写sql实现分页,也可以使用Mybatis的分页插件。分页插件的原理:使用Mybatis提供的插件接口,实现自定义插件,在插件的拦截方法内拦截待执行的sql,然后重写sql,根据dialect方言,添加对应的物理分页语句和物理分页参数。举例:select * from student,拦截 sql 后重写为:select t.* from(select * from student)t limit 0,10。 9题 resultType和resultMap都是表示数据库表与pojo之间的映射规则的。类的名字和数据库相同时,可以直接设置resultType 参数为Pojo类。若不同或者有关联查询,需要设置resultMap将结果名字和Pojo名字进行转换。在项目中我们定义的resultMap多了property和column属性,实际也就是分别配置Pojo类的属性和对应的表字段之间的映射关系,多了这个映射关系以后,方便维护。 8题 之所以说Mybatis半自动化,是因为SQL语句需要用户自定义,SQL的解析、执行等工作由Mybatis执行。区别:Hibernate属于全自动 ORM 映射工具,使用Hibernate查询关联对象或者关联集合对象时,可以根据对象关系模型直接获取,所以它是全自动的。而 Mybatis 在查询关联对象或关联集合对象时,需要手动编写 sql 来完成,所以它是半自动ORM映射工具。 7题 MyBatis 的缓存分为一级缓存和二级缓存。一级缓存是SqlSession级别的缓存,默认就有,在操作数据库时需要构造 sqlSession对象,在对象中有一个(内存区域)数据结构(HashMap)用于存储缓存数据,不同的sqlSession之间的缓存数据区域(HashMap)是互相不影响的。二级缓存是mapper级别的缓存,默认是不打开的,多个SqlSession去操作同一个Mapper的sql语句,多个SqlSession去操作数据库得到数据会存在二级缓存区域,多个SqlSession可以共用二级缓存,二级缓存是跨SqlSession的。 6题 RequestMapping是一个用来处理请求地址映射的注解,可用于类或方法上。用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径。用于方法上是为了细化映射,即根据特定的HTTP请求方法(GET、POST 方法等)、HTTP请求中是否携带特定参数等条件,将请求映射到匹配的方法上。 5题 1、前置通知(before advice):在目标方法调用之前执行; 2、后置通知(after returning advice):在目标方法调用之后执行,一旦目标方法产生异常不会执行; 3、最终通知(after(finally) advice):在目标调用方法之后执行,无论目标方法是否产生异常,都会执行; 4、异常通知(after throwing advice):在目标方法产生异常时执行; 5、环绕通知(around advice):在目标方法执行之前和执行之后都会执行,可以写一些非核心的业务逻辑,一般用来替代前置通知和后置通知。 4题 1、通过构造器或工厂方法创建Bean实例;2、为Bean的属性设置值和对其他Bean的引用;3、将Bean实例传递给Bean后置处理器的postProcessBeforeInitialization方法;4、调用Bean的初始方法(init-method);5、将bean实例传递给bean后置处理器的postProcessAfterInitialization方法;6、bean可以使用了;7、当容器关闭时,调用Bean的销毁方法(destroy-method) 3题 在TransactionDefinition接口中定义了五个表示隔离级别的常量: ISOLATION_DEFAULT:使用后端数据库默认的隔离级别,Mysql默认采用的REPEATABLE_READ隔离级别;Oracle默认采用的READ_COMMITTED隔离级别。 ISOLATION_READ_UNCOMMITTED:最低的隔离级别,允许读取尚未提交的数据变更,可能会导致脏读、幻读或不可重复读。 ISOLATION_READ_COMMITTED:允许读取并发事务已经提交的数据,可以阻止脏读,但是幻读或不可重复读仍有可能发生 ISOLATION_REPEATABLE_READ:对同一字段的多次读取结果都是一致的,除非数据是被本身事务自己所修改,可以阻止脏读和不可重复读,但幻读仍有可能发生。 ISOLATION_SERIALIZABLE:最高的隔离级别,完全服从ACID的隔离级别。所有的事务依次逐个执行,这样事务之间就完全不可能产生干扰,也就是说,该级别可以防止脏读、不可重复读以及幻读。但是这将严重影响程序的性能。通常情况下也不会用到该级别。 2 题 自动装配提供五种不同的模式供Spring容器用来自动装配beans之间的依赖注入: 1.默认的方式是不进行自动装配,通过手工设置ref 属性来进行装配bean。 2.byName:通过参数名自动装配,之后容器试图匹配、装配和该bean的属性具有相同名字的bean。 3.byType:按照参数的数据类型进行自动装配,之后容器试图匹配和装配和该bean的属性类型一样的bean。如果存在多个相同类型的bean对象,会出错。 4.constructor:使用构造方法完成对象注入,其实也是根据构造方法的参数类型进行对象查找,相当于采用byType的方式。 5.autodetect:如果找到默认的构造函数,则通过 constructor的方式自动装配,否则使用 byType的方式自动装配。在Spring3.0以后的版本此模式已被废弃,已经不再合法了。 1 题 循环依赖只会存在在单例实例中,多例循环依赖直接报错。Spring先用构造器实例化Bean对象,然后将实例化结束的对象放到一个Map中,并且Spring提供获取这个未设置属性的实例化对象的引用方法。当Spring实例化了A类、B类后,紧接着会去设置对象的属性,此时发现A类依赖B类,就会去Map中取出已经存在的单例B类对象,以此类推。因为所持有的都是引用,所以A类一改变B类也会跟着改变。从而解决循环依赖问题。
游客ih62co2qqq5ww 2020-03-03 18:05:36 0 浏览量 回答数 0

问题

极光推送一个朋友,三四天的Rails学习之路? 报错

极光推送一个朋友,三四天的Rails学习之路? 400 报错   最近因为一位极光推送朋友,我开始了大概三四天的Rails学习之路,最终达到的水平是可以比较轻松地做出大部分功能,然...
优选2 2020-06-04 21:19:39 3 浏览量 回答数 1

问题

极光推送一个朋友,三四天的Rails学习之路? 400 报错

极光推送一个朋友,三四天的Rails学习之路? 400 报错   最近因为一位极光推送朋友,我开始了大概三四天的Rails学习之路,最终达到的水平是可以比较轻松地做出大部分功能,然...
爱吃鱼的程序员 2020-06-02 13:32:16 0 浏览量 回答数 1

问题

极光推送一个朋友,三四天的Rails学习之路? 400 报错

极光推送一个朋友,三四天的Rails学习之路? 400 报错   最近因为一位极光推送朋友,我开始了大概三四天的Rails学习之路,最终达到的水平是可以比较轻松地做出大部分功能,然...
爱吃鱼的程序员 2020-05-29 19:26:23 0 浏览量 回答数 1

问题

Hibernate的优点,为什么用Hibernate:报错

一、Hibernate是JDBC的轻量级的对象封装,它是一个独立的对象持久层框架,和 App Server,和EJB没有什么必然的联系。Hibernate可以用在任何JDBC可以使用的场合ÿ...
kun坤 2020-06-09 10:46:45 1 浏览量 回答数 1

回答

  定位(Positioning),是由著名的美国营销专家艾尔·列斯(AlRies)与杰克·特罗(Jack   Trout)于70年代早期提出来的,当时,他们在美国《广告时代》发表了名为《定位时代》系列文章,以后,他们又把这些观点和理论集中反映在他们的第一本著作《广告攻心战略》一书中,正如他们所言,这是一本关于传播沟通的教科书。1996年,杰克·特罗整理了25年来的工作经验,写出了《新定位》一书。也许是更加符合了时代的要求,但其核心思想却仍然源自于他们于1972年提出的定位论。定位理论的产生,源于人类各种信息传播渠道的拥挤和阻塞,可以归结为信息爆炸时代对商业运作的影响结果。科技进步和经济社会的发展,几乎把消费者推到了无所适从的境地。首先是媒体的爆炸:广播、电视、互联网,录音带、录像带、光盘使消费者目不暇接。其次是产品的爆炸:仅电视就有大屏幕的、小屏幕的,平面直角的、超平的、纯平的,从耐用消费品到日用品,都给人以眼花缭乱的感觉。再就是广告的爆炸:电视广告、广播广告、报刊广告、街头广告、楼门广告、电梯广告,真可谓无孔不入。因此,定位就显得非常必要。   按照艾尔·列斯与杰克·特罗的观点:定位,是从产品开始,可以是一件商品,一项服务,一家公司,一个机构,甚至于是一个人,也可能是你自己。定位并不是要你对产品做什么事情,定位是你对产品在未来的潜在顾客的脑海里确定一个合理的位置,也就是把产品定位在你未来潜在顾客的心目中。定位可以看成是对现有产品的一种创造性试。“改变的是名称、价格及包装,实际上对产品则完全没有改变,所有的改变,基本上是在作着修饰而已,其目的是在潜在顾客心中得到有利的地位”。   定位的前提   按照艾尔·列斯与杰克·特罗的理论,我们目前已成为一个传播过多的社会,而消费者只能接受有限的信息,消费者抵御这种“信息爆炸”的最有力武器就是最小努力法则--痛恨复杂,喜欢简单。现有产品在顾客心目中都有一定的位置,例如,人们认为可口可乐是世界上最大饮料生产商,格兰仕是中国最大的微波炉生产商,北京同仁医院是中国最著名的眼科医院等,这些产品和服务的提供者在与消费者长期的交易中所拥有的地位,是其他人很难取代的。也就是说,消费者对品牌的印象不会轻易改变。定位的基本原则不是去创造某种新奇的或与众不同的东西,而是去操纵人们心中原本的想法,去打开联想之结,目的是要在顾客心目中,占据有利的地位。唯其如此,方能在市场上赢得有利的竞争地位。   一般说来,企业在营销中的失策表现为两大类:一是在市场逐渐成熟后,如果企业不能及时构思新的定位,从而使其陷入困境。例如,在冰箱、电视机等已成为国内的成熟技术之时,再有一个厂家去宣传自己是第一个引进外国技术,就会让人笑掉大牙。而海尔、长虹等企业诉求“海尔,中国造”、“长虹,以振兴民族工业为已任”,则收到了极好的效果。二是随着企业不断扩张和进行多元化角逐,而使消费者对产品的印象愈来愈模糊。美国雪佛莱汽车公司就经历过这样的事情。过去,雪佛莱汽车是美国家庭汽车的代名词,但在雪佛莱将生产线扩大到涵盖卡车、跑车等车型后,消费者心中原有的“雪佛莱就是美国家庭房车”的印象焦点反而模糊了,而让福特站上了第一品牌的宝座。在我国,“三九胃泰”曾是著名的胃药生产商,而后,又扩张到啤酒的生产,这无疑是为厂家出了个大难题:饮酒对胃肠道是一个不良刺激,自己生产的产品又是治疗胃病,是酒好还是胃药好。这不正是“矛盾”这一古代寓言的现代翻版吗。然而,这也正是“定位”理论的用武之地。   定位的真谛就是“攻心为上”,消费者的心灵才是营销的终级战场。从广告传播的角度来看定位,它不是要琢磨产品,因为产品已是生出来的孩子,已经定型,不大容易改变,而容易改变的是消费者的“心”。   要抓住消费者的心,必须了解他们的思考模式,这是进行定位的前提。《新定位》一书列出了消费者的五大思考模式,以帮助企业占领消费者心目中的位置。   模式一:消费者只能接收有限的信息。在超载的信息中,消费者会按照个人的经验、喜好、兴趣甚至情绪,选择接受哪些信息,记忆哪些信息。因此,较能引起兴趣的产品种类和品牌,就拥有打入消费者记忆的先天优势。例如,我国的杭州娃哈哈集团,最初是以生产“娃哈哈”儿童营养液而一举成名。它的成功就是由于,产品定位准确,而广告定位更是让人过目不忘,因为它源于一首人人熟知的儿歌,很容易引进儿童与家长的共鸣。   模式二:消费者喜欢简单,讨厌复杂。在各种媒体广告的狂轰滥炸下,消费者最需要简单明了的信息。广告传播信息简化的诀窍,就是不要长篇大论,而是集中力量将一个重点清楚地打入消费者心中,突破人们痛恨复杂的心理屏障。在这一点上最令人称道是我国的一种驱虫药广告,只须服两片,治蛲虫是两片,治钩虫也是两片。人们也许记不住复杂的药品名称,但只需说“两片”,药店的售货员就知道你要的是什么药。反过来,如果厂家在广告中介绍它的产品如何如何先进,效果如何显著,其结果可想而知。   模式三:消费者缺乏安全感。由于缺乏安全感,消费者会买跟别人一样的东西,免除花冤枉钱或被朋友批评的危险。所以,人们在购买商品前(尤其是耐用消费品),都要经过缜密的商品调查。而广告定位传达给消费者简单而又易引进兴趣的信息,正好使自己的品牌易于在消费者中传播。如果一位消费者要买驱虫药,必然先向朋友打听,一说“两片”,既满足了消费者安全感的需要,也无须记一些专业名词。   模式四:消费者对品牌的印象不会轻易改变。虽然一般认为新品牌有新鲜感,较能引人注目,但是消费者真能记到脑子里的信息,还是耳熟能详的东西。比如,对可口可乐公司的员工而言,它是总部设在亚特兰大市的一个“公司”,一个“机构”,而在一般消费者心目中,可口可乐是一种甜美的、深色的、加了碳酸气的饮料,可口可乐是一个著名饮料品牌。如果,可口可乐公司那天心血来潮,去生产热门的香烟或者是啤酒,也许正是可口可乐的可叹可悲之时。   模式五:消费者的想法容易失去焦点。虽然盛行一时的多元化、扩张生产线增加了品牌多元性,但是却使消费者模糊了原有的品牌印象。美国舒洁公司在纸业的定位就是一例。舒洁原本是以生产舒洁卫生纸起家的,后来,它把自己的品牌拓展到舒洁纸面巾、舒洁纸餐巾以及其他纸产品,以至于在数十亿美元的市场中,拥有了最大的市场占有率。然而,正是这些盲目延伸的品牌,使消费者失去了对其注意的焦点,最终让宝洁公司乘虚而入。难怪一位营销专家以美国人幽默方式发问:舒洁餐巾纸,舒洁卫生纸,到底哪个牌子是为鼻子而设计的呢。   所以,企业在定位中一定要掌握好这些原则:消费者接受信息的容量是有限的,广告宣传“简单”就是美,一旦形成的定位很难在短时间内消除,盲目的品牌延伸会摧毁自己在消费者心目中的既有定位。所以,无论是产品定位,还是广告定位一定要慎之又慎。   定位的方法   在广告泛滥、信息爆炸,消费者必然要用尽心力筛选掉大部分垃圾。例如,尽管市场上饮料众多,人们只知道有可口可乐、娃哈哈、乐百氏等几种品牌,并且这些品牌在他们心目中还是有一定顺序的,不用说,可口可乐一定是第一,至于第二、第三就要看厂家的定位策略了。人们总是容易记住第一名,如谁都知道世界第一高峰是珠穆拉玛峰,但极少有人能说出第二大高峰,人们能很快说出体育比赛的冠军,亚军则不易给人留下印象。所以,在具体操作中营销人员要善于找出自己品牌所拥有的令人信服的某种重要属性或利益。通过一定的策略和方法,让自己的品牌给人们留下深刻的印象。这些方法一般有:   强化自己已有的定位。既然现有的产品和服务在消费者心目中都有一定的位置,如果这种定位对企业有利的话,就要反复向人们宣传这种定位,强化本企业的产品在消费者心目的形象,也就是自己的特色,而这种强化必须是实事求是的。如,在我国的冰箱生产厂家中,海尔反复强调自己的“高品质”,新飞则宣传自己是节能冰箱,而美菱把文章做在了“保鲜”上。   比附定位。使定位对象与竞争对象(已占有牢固位置)发生关联,并确立与竞争对象的定位相反的或可比的定位概念。如美国一家处于第二位的出租汽车公司,在广告中反复宣传:我们是第二,所以我们更加努力啊。这样,既强化了自己与第一的关系,又表明了自己处于弱者的位置,更易引起人们“同情弱者”的共鸣。   单一位置策略。处于领导地位者,要以另外的新品牌来压制竞争者。因为每一个品牌都在其潜在顾客心目中安置了独自所占据的一个特定处所。这是作为市场领导者所要采取的策略。既然自己是老大,“卧榻之侧,哪容他人酣睡”,因此,在各种场合宣传自己第一的形象自然就在情理之中。   寻找空隙策略。寻求消费者心目中的空隙,然后加以填补。其中有价格(高低),性别,年龄,一天中的时段,分销渠道,大量使用者的位置等各种空隙。如,万宝路在美国是著名的香烟品牌,而一个叫窈窕牌的香烟品牌,就是以女性抽烟者为突破口挑战万宝路而大获成功。   类别品牌定位。当一个强大的品牌名称成了产品类别名称的代表或代替物时,必须给公司一个真正成功的新产品以一个新的名称,而不能采用“搭便车”的做法,沿袭公司原有产品的名称。这像“跷跷板”原理,当一种上来时,另一种就下去。因为一个名称不能代表两个迥然不同的产品。宝洁公司的多品牌策略就大有可取之处。   再定位。也就是重新定位,意即打破事物(例如产品)在消费者心目中所保持的原有位置与结构,使事物按照新的观念在消费者心目中重新排位,调理关系,以创造一个有利于自己的新的秩序。这意味着必须先把旧的观念或产品搬出消费者的记忆,才能把另一个新的定位装进去。海尔在最初是以宣传自己冰箱的品质优良作为定位,而在产品延伸之后,很快就突出了“中国造”、“向国际营销商授权”等新的定位。   需要指出的是,由于艾尔·列斯与杰克·特罗都是广告人出身,他们的定位理论往往局限于一种广告传播策略,强调让产品占领消费者心目中的空隙。目前,定位理论对营销的影响远远超过了原先把它作为一种传播技巧的范畴,而演变为营销策略的一个基本步骤。这反映在营销大师科特勒对定位下的定义中。他认为,定位是对公司的提供物(原文是offer)和形象的策划行为,目的是使它在目标消费者的心目中占据一个独特的有价值的位置。因此,“营销人员必须从零开始,使产品特色确实符合所选择的目标市场。”科特勒把艾尔·列斯与杰克·特罗的定位理论归结为“对产品的心理定位和再定位”。显然,除此之外,还有对潜在产品的定位。这就给定位理论留下了更为广阔的发展空间。
寒凝雪 2019-12-02 01:17:15 0 浏览量 回答数 0

问题

通过自动重连方式解决RDS闪断问题

RDS闪断解决方案 一RDS闪断的原因和影响: 1、    什么是闪断? 是指游戏APP与RDS之间的网络链路在短时间内(一般不超过三十秒) 发生了的中断。 2、 ...
nono20011908 2019-12-01 21:07:16 27529 浏览量 回答数 1

回答

定位(Positioning),由美国著名营销专家艾·里斯(AlRies)与杰克·特劳特(Jack Trout)于70年代早期提出。   2001年,定位被美国营销学会评为有史以来对美国营销业影响最大的观念。   2007年,美国权威媒体评选“全球十大顶尖商业战略大师”,艾·里斯与彼得·德鲁克、杰克·韦尔奇等并列其中。   2009年,美国《财富》杂志(Fortune,2009年2月刊)推出“历史上百本最佳商业经典著作”前十位介绍,由艾·里斯与杰克·特劳特合著的《定位》名列首位。   当时,他们在美国《广告时代》发表了名为《定位时代》系列文章。只后,他们将这些观点和理论集中反映在他们合作的第一本著作《广告攻心战略》一书中。正如他们所言,这是一本关于传播沟通的教科书。   1996年,杰克·特劳特整理了25年来的工作经验,写出了《新定位》一书。也许是更加符合了时代的要求,但其核心思想却仍然源自于他们于1972年提出的定位论。定位理论的产生,源于人类各种信息传播渠道的拥挤和阻塞,可以归结为信息爆炸时代对商业运作的影响结果。科技进步和经济社会的发展,几乎把消费者推到了无所适从的境地。首先是媒体的爆炸:广播、电视、互联网,录音带、录像带、光盘使消费者目不暇接。其次是产品的爆炸:仅电视就有大屏幕的、小屏幕的,平面直角的、超平的、纯平的,从耐用消费品到日用品,都给人以眼花缭乱的感觉。再就是广告的爆炸:电视广告、广播广告、报刊广告、街头广告、楼门广告、电梯广告,真可谓无孔不入。因此,定位就显得非常必要。   定位是对产品在未来的潜在顾客的脑海里确定一个合理的位置。定位的基本原则不是去创造某种新奇的或与众不同的东西,而是去操纵人们心中原本的想法,去打开联想之结。定位的真谛就是“攻心为上”,消费者的心灵才是营销的终级战场。消费者有五大思考模式:消费者只能接收有限的信息、消费者喜欢简单,讨厌复杂、消费者缺乏安全感、消费者对品牌的印象不会轻易改变、消费者的想法容易失去焦点。掌握这些特点有利于以帮助企业占领消费者心目中的位置。而定位的方法有多种,如强化自己已有的定位、比附定位、单一位置策略、寻找空隙策略、类别品牌定位、再定位等。   按照艾·里斯与杰克·特劳特的观点:定位,是从产品开始,可以是一件商品,一项服务,一家公司,一个机构,甚至于是一个人,也可能是你自己。定位并不是要你对产品做什么事情,定位是你对产品在未来的潜在顾客的脑海里确定一个合理的位置,也就是把产品定位在你未来潜在顾客的心目中。定位可以看成是对现有产品的一种创造性试验。“改变的是名称、价格及包装,实际上对产品则完全没有改变,所有的改变,基本上是在作着修饰而已,其目的是在潜在顾客心中得到有利的地位”。   所谓定位,就是令你的企业和产品与众不同,形成核心竞争力;对受众而言,即鲜明地建立品牌。   ——杰克·特劳特   所谓定位,就是让品牌在消费者的心智中占据最有利的位置,使品牌成为某个类别或某种特性的代表品牌。这样当消费者产生相关需求时,便会将定位品牌作为首选,也就是说这个品牌占据了这个定位。   —— 特劳特(中国)品牌战略咨询有限公司总裁 邓德隆 编辑本段定位的前提   按照艾·里斯与杰克·特劳特的理论,我们目前已成为一个传播过多的社会,而消费者只能接受有限的信息,消费者抵御这种“信息爆炸”的最有力武器就是最小努力法则--痛恨复杂,喜欢简单。现有产品在顾客心目中都有一定的位置,例如,人们认为可口可乐是世界上最大饮料生产商,格兰仕是中国最大的微波炉生产商,北京同仁医院是中国最著名的眼科医院等,这些产品和服务的提供者在与消费者长期的交易中所拥有的地位,是其他人很难取代的。也就是说,消费者对品牌的印象不会轻易改变。定位的基本原则不是去创造某种新奇的或与众不同的东西,而是去操纵人们心中原本的想法,去打开联想之结,目的是要在顾客心目中,占据有利的地位。唯其如此,方能在市场上赢得有利的竞争地位。   一般说来,企业在营销中的失策表现为两大类:   一是在市场逐渐成熟后,如果企业不能及时构思新的定位,从而使其陷入困境。例如,在冰箱、电视机等已成为国内的成熟技术之时,再有一个厂家去宣传自己是第一个引进外国技术,就会让人笑掉大牙。而海尔、长虹等企业诉求“海尔,中国造”、“长虹,以振兴民族工业为已任”,则收到了极好的效果。   二是随着企业不断扩张和进行多元化角逐,而使消费者对产品的印象愈来愈模糊。美国雪佛莱汽车公司就经历过这样的事情。过去,雪佛莱汽车是美国家庭汽车的代名词,但在雪佛莱将生产线扩大到涵盖卡车、跑车等车型后,消费者心中原有的“雪佛莱就是美国家庭房车”的印象焦点反而模糊了,而让福特站上了第一品牌的宝座。在我国,“三九胃泰”曾是著名的胃药生产商,而后,又扩张到啤酒的生产,这无疑是为厂家出了个大难题:饮酒对胃肠道是一个不良刺激,自己生产的产品又是治疗胃病,是酒好还是胃药好。这不正是“矛盾”这一古代寓言的现代翻版吗。然而,这也正是“定位”理论的用武之地。   定位的真谛就是“攻心为上”,消费者的心灵才是营销的终级战场。从广告传播的角度来看定位,它不是要琢磨产品,因为产品已是生出来的孩子,已经定型,不大容易改变,而容易改变的是消费者的“心”。 编辑本段消费者五大思考模式   要抓住消费者的心,必须了解他们的思考模式,这是进行定位的前提。《新定位》一书列出了消费者的五大思考模式,以帮助企业占领消费者心目中的位置。 模式一:消费者只能接收有限的信息。   在超载的信息中,消费者会按照个人的经验、喜好、兴趣甚至情绪,选择接受哪些信息,记忆哪些信息。因此,较能引起兴趣的产品种类和品牌,就拥有打入消费者记忆的先天优势。例如,我国的杭州娃哈哈集团,最初是以生产“娃哈哈”儿童营养液而一举成名。它的成功就是由于,产品定位准确,而广告定位更是让人过目不忘,因为它源于一首人人熟知的儿歌,很容易引进儿童与家长的共鸣。 模式二:消费者喜欢简单,讨厌复杂。   在各种媒体广告的狂轰滥炸下,消费者最需要简单明了的信息。广告传播信息简化的诀窍,就是不要长篇大论,而是集中力量将一个重点清楚地打入消费者心中,突破人们痛恨复杂的心理屏障。在这一点上最令人称道是我国的一种驱虫药广告,只须服两片,治蛲虫是两片,治钩虫也是两片。人们也许记不住复杂的药品名称,但只需说“两片”,药店的售货员就知道你要的是什么药。反过来,如果厂家在广告中介绍它的产品如何如何先进,效果如何显著,其结果可想而知。 模式三:消费者缺乏安全感。   由于缺乏安全感,消费者会买跟别人一样的东西,免除花冤枉钱或被朋友批评的危险。所以,人们在购买商品前(尤其是耐用消费品),都要经过缜密的商品调查。而广告定位传达给消费者简单而又易引进兴趣的信息,正好使自己的品牌易于在消费者中传播。如果一位消费者要买驱虫药,必然先向朋友打听,一说“两片”,既满足了消费者安全感的需要,也无须记一些专业名词。   模式四: 消费者对品牌的印象不会轻易改变 。 虽然一般认为新品牌有新鲜感,较能引人注目,但是消费者真能记到脑子里的信息,还是耳熟能详的东西。比如,对可口可乐公司的员工而言,它是总部设在亚特兰大市的一个“公司”,一个“机构”,而在一般消费者心目中,可口可乐是一种甜美的、深色的、加了碳酸气的饮料,可口可乐是一个著名饮料品牌。如果,可口可乐公司哪天心血来潮,去生产热门的香烟或者是啤酒,也许正是可口可乐的可叹可悲之时。 模式五:消费者的想法容易失去焦点。   虽然盛行一时的多元化、扩张生产线增加了品牌多元性,但是却使消费者模糊了原有的品牌印象。美国舒洁公司在纸业的定位就是一例。舒洁原本是以生产舒洁卫生纸起家的,后来,它把自己的品牌拓展到舒洁纸面巾、舒洁纸餐巾以及其他纸产品,以至于在数十亿美元的市场中,拥有了最大的市场占有率。然而,正是这些盲目延伸的品牌,使消费者失去了对其注意的焦点,最终让宝洁公司乘虚而入。难怪一位营销专家以美国人幽默方式发问:舒洁餐巾纸,舒洁卫生纸,到底哪个牌子是为鼻子而设计的呢。   所以,企业在定位中一定要掌握好这些原则:消费者接受信息的容量是有限的,广告宣传“简单”就是美,一旦形成的定位很难在短时间内消除,盲目的品牌延伸会摧毁自己在消费者心目中的既有定位。所以,无论是产品定位,还是广告定位一定要慎之又慎。 编辑本段定位方法   在广告泛滥、信息爆炸,消费者必然要用尽心力筛选掉大部分垃圾。例如,尽管市场上饮料众多,人们只知道有可口可乐、娃哈哈、乐百氏等几种品牌,并且这些品牌在他们心目中还是有一定顺序的,不用说,可口可乐一定是第一,至于第二、第三就要看厂家的定位策略了。   人们总是容易记住第一名,如谁都知道世界第一高峰是珠穆拉玛峰,但极少有人能说出第二大高峰,人们能很快说出体育比赛的冠军,亚军则不易给人留下印象。所以,在具体操作中营销人员要善于找出自己品牌所拥有的令人信服的某种重要属性或利益。通过一定的策略和方法,让自己的品牌给人们留下深刻的印象。这些方法一般有: 强化自己已有的定位   既然现有的产品和服务在消费者心目中都有一定的位置,如果这种定位对企业有利的话,就要反复向人们宣传这种定位,强化本企业的产品在消费者心目的形象,也就是自己的特色,而这种强化必须是实事求是的。如,在我国的冰箱生产厂家中,海尔反复强调自己的“高品质”,新飞则宣传自己是节能冰箱,而美菱把文章做在了“保鲜”上。 比附定位   使定位对象与竞争对象(已占有牢固位置)发生关联,并确立与竞争对象的定位相反的或可比的定位概念。如美国一家处于第二位的出租汽车公司,在广告中反复宣传:我们是第二,所以我们更加努力啊。这样,既强化了自己与第一的关系,又表明了自己处于弱者的位置,更易引起人们“同情弱者”的共鸣。 第一定位   处于领导地位者,要以另外的新品牌来压制竞争者。因为每一个品牌都在其潜在顾客心目中安置了独自所占据的一个特定处所。这是作为市场领导者所要采取的策略。既然自己是老大,“卧榻之侧,岂容他人酣睡”,因此,在各种场合宣传自己第一的形象自然就在情理之中。 市场空白   寻求消费者心目中的空隙,然后加以填补。其中有价格(高低),性别,年龄,一天中的时段,分销渠道,大量使用者的位置等各种空隙。如,万宝路在美国是著名的香烟品牌,而一个叫窈窕牌的香烟品牌,就是以女性抽烟者为突破口挑战万宝路而大获成功。 品类   当一个强大的品牌名称成了产品类别名称的代表或代替物时,必须给公司一个真正成功的新产品以一个新的名称,而不能采用“搭便车”的做法,沿袭公司原有产品的名称。这像“跷跷板”原理,当一种上来时,另一种就下去。因为一个名称不能代表两个迥然不同的产品。宝洁公司的多品牌策略就大有可取之处。 再定位   也就是重新定位,意即打破事物(例如产品)在消费者心目中所保持的原有位置与结构,使事物按照新的观念在消费者心目中重新排位,调理关系,以创造一个有利于自己的新的秩序。这意味着必须先把旧的观念或产品搬出消费者的记忆,才能把另一个新的定位装进去。海尔在最初是以宣传自己冰箱的品质优良作为定位,而在产品延伸之后,很快就突出了“中国造”、“向国际营销商授权”等新的定位。   需要指出的是,由于艾·里斯与杰克·特劳特都是广告人出身,他们的定位理论往往局限于一种广告传播策略,强调让产品占领消费者心目中的空隙。目前,定位理论对营销的影响远远超过了原先把它作为一种传播技巧的范畴,而演变为营销策略的一个基本步骤。这反映在营销大师科特勒对定位下的定义中。他认为,定位是对公司的提供物(原文是offer)和形象的策划行为,目的是使它在目标消费者的心目中占据一个独特的有价值的位置。因此,“营销人员必须从零开始,使产品特色确实符合所选择的目标市场。”科特勒把艾尔·列斯与杰克·特罗的定位理论归结为“对产品的心理定位和再定位”。显然,除此之外,还有对潜在产品的定位。这就给定位理论留下了更为广阔的发展空间。 编辑本段定位理论在中国的发展   定位的一个中心、两个基本点   定位理论传入中国后,定位理论和中国实践相结合,取得中部定位第一人、著名品牌定位专家鲁建华首次提出:定位理论的核心是一个中心、两个基本点,以打造品牌为中心,以竞争导向和进入顾客心智为基本点。 以打造品牌为中心    从根本的角度思考,营销的过程就是创造顾客、打造品牌的过程,营销就是打造品牌;从更广义的角度讲,创建伟大企业的过程其实就是创造顾客、打造品牌的过程,做企业就是做品牌,企业运营的本质就是打造品牌。   定位理论所有的概念、观点、体系都服务于打造品牌这个目的,是围绕打造品牌而展开的。离开打造品牌这个中心,谈论定位理论,必然会误入歧途,不得要领。 以竞争导向为基本点   顾客重要还是竞争重要。传统的营销理论认为,顾客更重要,没有顾客就不会有竞争,营销就是满足顾客的需要和需求。“顾客是上帝”观念至高无上,广为流传。至今顾客导向的观念仍然深入人心。   从纯理论的角度讲,顾客确实比竞争重要;但从实战的角度看,解决竞争才是最重要的。从满足、服务顾客的角度看营销,营销必然走向趋同,没有差异,最终只有沦落到打价格战的深渊;而从竞争角度看营销,营销就会有活力,营销必然走向创造顾客、创造需求的新境界,不断引领企业开创新的未来。   竞争导向要求营销者首先考虑的问题是如何让自己的品牌与竞争品牌区分开来,实现差异化,把生意从竞争对手那里转换过来。这是定位思考的起点。   营销就是战争,商场就是战场。定位就是在与竞争对手正式开战之前进入和占据一个最有利的位置。定位是建立在竞争之上,随着竞争的发展而发展的。   竞争导向的观念是定位理论的第一个基本点。 以进入顾客心智为基本点   营销中没有事实,只有认知。   这是商业中最隐秘、最基本的真理,三个方面的原因导致了这一点:   一是从事实到认知有一个过程,你不能跨越这个过程。这个过程就是事实要经过大脑的过滤、解读,最终体现事实的认知。   二是人们已经形成既有的认知和观念,他们认为自己的这些既有认知、观念就是事实。而这些既有的认知、观念会影响人们对新事物的认知。这表现在两个方面:其一,心智中既有的认知、观念会让人们有选择地接收信息,你“看到”、“听到”、“尝到”的事物往往是你“希望看到”、“希望听到”、“希望尝到”的事物;其二,心智中既有的认知、观念有时会误导你,比如在一个装满自来水的瓶子上贴上某纯净水品牌的商标,你对这个品牌既有的认知(纯净水)会影响到你对事实(自来水)的判断。   三是顾客的认知逻辑与企业的认知逻辑往往相反。虽然他们都认为质量更好的产品一定会胜出,企业判断质量的标准是产品的技术指标、最好的检测仪器(他们很自然地认为自己的产品质量更好),而顾客判断质量的标准是哪一种产品得到更多顾客青睐哪一种产品的质量就更好,顾客没有能力也没有精力去理会那些所谓的技术指标。这就是心智认知规律所揭示的事实。   其实所有的广告都是要影响你的认知,如果没有影响你,广告就是失败的;影响了你,那它就是成功的。离开认知,就没有办法谈营销。   营销之战不是事实之战,不是产品之战,不是市场之战,而是认知之战。商战的地点不是事实,不是产品,不是市场,而是心智。   商战的目的其实就是设法进入心智认知并占据一席之地。定位就是选择、占据心智认知上最有利的位置,通过商战实现这一目的。商战在顾客的心智中进行,心智是你获胜的地方,也是你落败的地方,心智决定成败。商战中没有事实,只有认知,认知即事实,认知决定成败。   坚持占据顾客心智是定位理论的第二个基本点。 辩证关系   心智是竞争的内容,竞争是进入心智的手段。竞争在心智中展开,心智是竞争的战场。心智为竞争开辟了全新的内容、提供了一个差异化的竞争角度,竞争是进入、占据心智的必由之路。心智认知规律决定竞争规律,竞争发现和提升了心智认知的价值和作用。竞争导向与占据心智这两个基本点有机结合,相互运动,共同服务于打造品牌。这就是定位理论的核心─一个中心、两个基本点的辩证关系。
青衫无名 2019-12-02 01:17:12 0 浏览量 回答数 0

问题

[IBM DW] 用 inotify 监控 Linux 文件系统事件:报错

简介: 当需要对 Linux®文件系统进行高效率、细粒度、异步地监控时,可以采用 inotify。可利用它对用户空间进行安全、性能、以及其他方面的监控。(2010 年 9 月 10 日,...
kun坤 2020-06-07 16:43:37 0 浏览量 回答数 1

回答

在开始谈我对架构本质的理解之前,先谈谈对今天技术沙龙主题的个人见解,千万级规模的网站感觉数量级是非常大的,对这个数量级我们战略上 要重 视 它 , 战术上又 要 藐 视 它。先举个例子感受一下千万级到底是什么数量级?现在很流行的优步(Uber),从媒体公布的信息看,它每天接单量平均在百万左右, 假如每天有10个小时的服务时间,平均QPS只有30左右。对于一个后台服务器,单机的平均QPS可以到达800-1000,单独看写的业务量很简单 。为什么我们又不能说轻视它?第一,我们看它的数据存储,每天一百万的话,一年数据量的规模是多少?其次,刚才说的订单量,每一个订单要推送给附近的司机、司机要并发抢单,后面业务场景的访问量往往是前者的上百倍,轻松就超过上亿级别了。 今天我想从架构的本质谈起之后,希望大家理解在做一些建构设计的时候,它的出发点以及它解决的问题是什么。 架构,刚开始的解释是我从知乎上看到的。什么是架构?有人讲, 说架构并不是一 个很 悬 乎的 东西 , 实际 上就是一个架子 , 放一些 业务 和算法,跟我们的生活中的晾衣架很像。更抽象一点,说架构其 实 是 对 我 们 重复性业务 的抽象和我 们 未来 业务 拓展的前瞻,强调过去的经验和你对整个行业的预见。 我们要想做一个架构的话需要哪些能力?我觉得最重要的是架构师一个最重要的能力就是你要有 战 略分解能力。这个怎么来看呢: 第一,你必须要有抽象的能力,抽象的能力最基本就是去重,去重在整个架构中体现在方方面面,从定义一个函数,到定义一个类,到提供的一个服务,以及模板,背后都是要去重提高可复用率。 第二, 分类能力。做软件需要做对象的解耦,要定义对象的属性和方法,做分布式系统的时候要做服务的拆分和模块化,要定义服务的接口和规范。 第三, 算法(性能),它的价值体现在提升系统的性能,所有性能的提升,最终都会落到CPU,内存,IO和网络这4大块上。 这一页PPT举了一些例子来更深入的理解常见技术背后的架构理念。 第一个例子,在分布式系统我们会做 MySQL分 库 分表,我们要从不同的库和表中读取数据,这样的抽象最直观就是使用模板,因为绝大多数SQL语义是相同的,除了路由到哪个库哪个表,如果不使用Proxy中间件,模板就是性价比最高的方法。 第二看一下加速网络的CDN,它是做速度方面的性能提升,刚才我们也提到从CPU、内存、IO、网络四个方面来考虑,CDN本质上一个是做网络智能调度优化,另一个是多级缓存优化。 第三个看一下服务化,刚才已经提到了,各个大网站转型过程中一定会做服务化,其实它就是做抽象和做服务的拆分。第四个看一下消息队列,本质上还是做分类,只不过不是两个边际清晰的类,而是把两个边际不清晰的子系统通过队列解构并且异步化。新浪微博整体架构是什么样的 接下我们看一下微博整体架构,到一定量级的系统整个架构都会变成三层,客户端包括WEB、安卓和IOS,这里就不说了。接着还都会有一个接口层, 有三个主要作用: 第一个作用,要做 安全隔离,因为前端节点都是直接和用户交互,需要防范各种恶意攻击; 第二个还充当着一个 流量控制的作用,大家知道,在2014年春节的时候,微信红包,每分钟8亿多次的请求,其实真正到它后台的请求量,只有十万左右的数量级(这里的数据可能不准),剩余的流量在接口层就被挡住了; 第三,我们看对 PC 端和移 动 端的需求不一样的,所以我们可以进行拆分。接口层之后是后台,可以看到微博后台有三大块: 一个是 平台服 务, 第二, 搜索, 第三, 大数据。到了后台的各种服务其实都是处理的数据。 像平台的业务部门,做的就是 数据存储和读 取,对搜索来说做的是 数据的 检 索,对大数据来说是做的数据的 挖掘。微博其实和淘宝是很类似 微博其实和淘宝是很类似的。一般来说,第一代架构,基本上能支撑到用户到 百万 级别,到第二代架构基本能支撑到 千万 级别都没什么问题,当业务规模到 亿级别时,需要第三代的架构。 从 LAMP 的架构到面向服 务 的架构,有几个地方是非常难的,首先不可能在第一代基础上通过简单的修修补补满足用户量快速增长的,同时线上业务又不能停, 这是我们常说的 在 飞 机上 换 引擎的 问题。前两天我有一个朋友问我,说他在内部推行服务化的时候,把一个模块服务化做完了,其他部门就是不接。我建议在做服务化的时候,首先更多是偏向业务的梳理,同时要找准一个很好的切入点,既有架构和服务化上的提升,业务方也要有收益,比如提升性能或者降低维护成本同时升级过程要平滑,建议开始从原子化服务切入,比如基础的用户服务, 基础的短消息服务,基础的推送服务。 第二,就是可 以做无状 态 服 务,后面会详细讲,还有数据量大了后需要做数据Sharding,后面会将。 第三代 架构 要解决的 问题,就是用户量和业务趋于稳步增加(相对爆发期的指数级增长),更多考虑技术框架的稳定性, 提升系统整体的性能,降低成本,还有对整个系统监控的完善和升级。 大型网站的系统架构是如何演变的 我们通过通过数据看一下它的挑战,PV是在10亿级别,QPS在百万,数据量在千亿级别。我们可用性,就是SLA要求4个9,接口响应最多不能超过150毫秒,线上所有的故障必须得在5分钟内解决完。如果说5分钟没处理呢?那会影响你年终的绩效考核。2015年微博DAU已经过亿。我们系统有上百个微服务,每周会有两次的常规上线和不限次数的紧急上线。我们的挑战都一样,就是数据量,bigger and bigger,用户体验是faster and faster,业务是more and more。互联网业务更多是产品体验驱动, 技 术 在 产 品 体验上最有效的贡献 , 就是你的性能 越来越好 。 每次降低加载一个页面的时间,都可以间接的降低这个页面上用户的流失率。微博的技术挑战和正交分解法解析架构 下面看一下 第三代的 架构 图 以及 我 们 怎么用正交分解法 阐 述。 我们可以看到我们从两个维度,横轴和纵轴可以看到。 一个 维 度 是 水平的 分层 拆分,第二从垂直的维度会做拆分。水平的维度从接口层、到服务层到数据存储层。垂直怎么拆分,会用业务架构、技术架构、监控平台、服务治理等等来处理。我相信到第二代的时候很多架构已经有了业务架构和技术架构的拆分。我们看一下, 接口层有feed、用户关系、通讯接口;服务层,SOA里有基层服务、原子服务和组合服务,在微博我们只有原子服务和组合服务。原子服务不依赖于任何其他服务,组合服务由几个原子服务和自己的业务逻辑构建而成 ,资源层负责海量数据的存储(后面例子会详细讲)。技 术框架解决 独立于 业务 的海量高并发场景下的技术难题,由众多的技术组件共同构建而成 。在接口层,微博使用JERSY框架,帮助你做参数的解析,参数的验证,序列化和反序列化;资源层,主要是缓存、DB相关的各类组件,比如Cache组件和对象库组件。监 控平台和服 务 治理 , 完成系统服务的像素级监控,对分布式系统做提前诊断、预警以及治理。包含了SLA规则的制定、服务监控、服务调用链监控、流量监控、错误异常监控、线上灰度发布上线系统、线上扩容缩容调度系统等。 下面我们讲一下常见的设计原则。 第一个,首先是系统架构三个利器: 一个, 我 们 RPC 服 务组 件 (这里不讲了), 第二个,我们 消息中 间 件 。消息中间件起的作用:可以把两个模块之间的交互异步化,其次可以把不均匀请求流量输出为匀速的输出流量,所以说消息中间件 异步化 解耦 和流量削峰的利器。 第三个是配置管理,它是 代码级灰度发布以及 保障系统降级的利器。 第二个 , 无状态 , 接口 层 最重要的就是无状 态。我们在电商网站购物,在这个过程中很多情况下是有状态的,比如我浏览了哪些商品,为什么大家又常说接口层是无状态的,其实我们把状态从接口层剥离到了数据层。像用户在电商网站购物,选了几件商品,到了哪一步,接口无状态后,状态要么放在缓存中,要么放在数据库中, 其 实 它并不是没有状 态 , 只是在 这 个 过 程中我 们 要把一些有状 态 的 东 西抽离出来 到了数据层。 第三个, 数据 层 比服 务层 更需要 设计,这是一条非常重要的经验。对于服务层来说,可以拿PHP写,明天你可以拿JAVA来写,但是如果你的数据结构开始设计不合理,将来数据结构的改变会花费你数倍的代价,老的数据格式向新的数据格式迁移会让你痛不欲生,既有工作量上的,又有数据迁移跨越的时间周期,有一些甚至需要半年以上。 第四,物理结构与逻辑结构的映射,上一张图看到两个维度切成十二个区间,每个区间代表一个技术领域,这个可以看做我们的逻辑结构。另外,不论后台还是应用层的开发团队,一般都会分几个垂直的业务组加上一个基础技术架构组,这就是从物理组织架构到逻辑的技术架构的完美的映射,精细化团队分工,有利于提高沟通协作的效率 。 第五, www .sanhao.com 的访问过程,我们这个架构图里没有涉及到的,举个例子,比如当你在浏览器输入www.sanhao网址的时候,这个请求在接口层之前发生了什么?首先会查看你本机DNS以及DNS服务,查找域名对应的IP地址,然后发送HTTP请求过去。这个请求首先会到前端的VIP地址(公网服务IP地址),VIP之后还要经过负载均衡器(Nginx服务器),之后才到你的应用接口层。在接口层之前发生了这么多事,可能有用户报一个问题的时候,你通过在接口层查日志根本发现不了问题,原因就是问题可能发生在到达接口层之前了。 第六,我们说分布式系统,它最终的瓶颈会落在哪里呢?前端时间有一个网友跟我讨论的时候,说他们的系统遇到了一个瓶颈, 查遍了CPU,内存,网络,存储,都没有问题。我说你再查一遍,因为最终你不论用上千台服务器还是上万台服务器,最终系统出瓶颈的一定会落在某一台机(可能是叶子节点也可能是核心的节点),一定落在CPU、内存、存储和网络上,最后查出来问题出在一台服务器的网卡带宽上。微博多级双机房缓存架构 接下来我们看一下微博的Feed多级缓存。我们做业务的时候,经常很少做业务分析,技术大会上的分享又都偏向技术架构。其实大家更多的日常工作是需要花费更多时间在业务优化上。这张图是统计微博的信息流前几页的访问比例,像前三页占了97%,在做缓存设计的时候,我们最多只存最近的M条数据。 这里强调的就是做系统设计 要基于用 户 的 场 景 , 越细致越好 。举了一个例子,大家都会用电商,电商在双十一会做全国范围内的活动,他们做设计的时候也会考虑场景的,一个就是购物车,我曾经跟相关开发讨论过,购物车是在双十一之前用户的访问量非常大,就是不停地往里加商品。在真正到双十一那天他不会往购物车加东西了,但是他会频繁的浏览购物车。针对这个场景,活动之前重点设计优化购物车的写场景, 活动开始后优化购物车的读场景。 你看到的微博是由哪些部分聚合而成的呢?最右边的是Feed,就是微博所有关注的人,他们的微博所组成的。微博我们会按照时间顺序把所有关注人的顺序做一个排序。随着业务的发展,除了跟时间序相关的微博还有非时间序的微博,就是会有广告的要求,增加一些广告,还有粉丝头条,就是拿钱买的,热门微博,都会插在其中。分发控制,就是说和一些推荐相关的,我推荐一些相关的好友的微博,我推荐一些你可能没有读过的微博,我推荐一些其他类型的微博。 当然对非时序的微博和分发控制微博,实际会起多个并行的程序来读取,最后同步做统一的聚合。这里稍微分享一下, 从SNS社交领域来看,国内现在做的比较好的三个信息流: 微博 是 基于弱关系的媒体信息流 ; 朋友圈是基于 强 关系的信息流 ; 另外一个做的比 较 好的就是今日 头 条 , 它并不是基于关系来构建信息流 , 而是基于 兴趣和相关性的个性化推荐 信息流 。 信息流的聚合,体现在很多很多的产品之中,除了SNS,电商里也有信息流的聚合的影子。比如搜索一个商品后出来的列表页,它的信息流基本由几部分组成:第一,打广告的;第二个,做一些推荐,热门的商品,其次,才是关键字相关的搜索结果。 信息流 开始的时候 很 简单 , 但是到后期会 发现 , 你的 这 个流 如何做控制分发 , 非常复杂, 微博在最近一两年一直在做 这样 的工作。刚才我们是从业务上分析,那么技术上怎么解决高并发,高性能的问题?微博访问量很大的时候,底层存储是用MySQL数据库,当然也会有其他的。对于查询请求量大的时候,大家知道一定有缓存,可以复用可重用的计算结果。可以看到,发一条微博,我有很多粉丝,他们都会来看我发的内容,所以 微博是最适合使用 缓 存 的系统,微博的读写比例基本在几十比一。微博使用了 双 层缓 存,上面是L1,每个L1上都是一组(包含4-6台机器),左边的框相当于一个机房,右边又是一个机房。在这个系统中L1缓存所起的作用是什么? 首先,L1 缓 存增加整个系 统 的 QPS, 其次 以低成本灵活扩容的方式 增加 系统 的 带宽 。想象一个极端场景,只有一篇博文,但是它的访问量无限增长,其实我们不需要影响L2缓存,因为它的内容存储的量小,但它就是访问量大。这种场景下,你就需要使用L1来扩容提升QPS和带宽瓶颈。另外一个场景,就是L2级缓存发生作用,比如我有一千万个用户,去访问的是一百万个用户的微博 ,这个时候,他不只是说你的吞吐量和访问带宽,就是你要缓存的博文的内容也很多了,这个时候你要考虑缓存的容量, 第二 级缓 存更多的是从容量上来 规划,保证请求以较小的比例 穿透到 后端的 数据 库 中 ,根据你的用户模型你可以估出来,到底有百分之多少的请求不能穿透到DB, 评估这个容量之后,才能更好的评估DB需要多少库,需要承担多大的访问的压力。另外,我们看双机房的话,左边一个,右边一个。 两个机房是互 为 主 备 , 或者互 为热备 。如果两个用户在不同地域,他们访问两个不同机房的时候,假设用户从IDC1过来,因为就近原理,他会访问L1,没有的话才会跑到Master,当在IDC1没找到的时候才会跑到IDC2来找。同时有用户从IDC2访问,也会有请求从L1和Master返回或者到IDC1去查找。 IDC1 和 IDC2 ,两个机房都有全量的用户数据,同时在线提供服务,但是缓存查询又遵循最近访问原理。还有哪些多级缓存的例子呢?CDN是典型的多级缓存。CDN在国内各个地区做了很多节点,比如在杭州市部署一个节点时,在机房里肯定不止一台机器,那么对于一个地区来说,只有几台服务器到源站回源,其他节点都到这几台服务器回源即可,这么看CDN至少也有两级。Local Cache+ 分布式 缓 存,这也是常见的一种策略。有一种场景,分布式缓存并不适用, 比如 单 点 资 源 的爆发性峰值流量,这个时候使用Local Cache + 分布式缓存,Local Cache 在 应用 服 务 器 上用很小的 内存资源 挡住少量的 极端峰值流量,长尾的流量仍然访问分布式缓存,这样的Hybrid缓存架构通过复用众多的应用服务器节点,降低了系统的整体成本。 我们来看一下 Feed 的存 储 架构,微博的博文主要存在MySQL中。首先来看内容表,这个比较简单,每条内容一个索引,每天建一张表,其次看索引表,一共建了两级索引。首先想象一下用户场景,大部分用户刷微博的时候,看的是他关注所有人的微博,然后按时间来排序。仔细分析发现在这个场景下, 跟一个用户的自己的相关性很小了。所以在一级索引的时候会先根据关注的用户,取他们的前条微博ID,然后聚合排序。我们在做哈希(分库分表)的时候,同时考虑了按照UID哈希和按照时间维度。很业务和时间相关性很高的,今天的热点新闻,明天就没热度了,数据的冷热非常明显,这种场景就需要按照时间维度做分表,首先冷热数据做了分离(可以对冷热数据采用不同的存储方案来降低成本),其次, 很容止控制我数据库表的爆炸。像微博如果只按照用户维度区分,那么这个用户所有数据都在一张表里,这张表就是无限增长的,时间长了查询会越来越慢。二级索引,是我们里面一个比较特殊的场景,就是我要快速找到这个人所要发布的某一时段的微博时,通过二级索引快速定位。 分布式服务追踪系统 分布式追踪服务系统,当系统到千万级以后的时候,越来越庞杂,所解决的问题更偏向稳定性,性能和监控。刚才说用户只要有一个请求过来,你可以依赖你的服务RPC1、RPC2,你会发现RPC2又依赖RPC3、RPC4。分布式服务的时候一个痛点,就是说一个请求从用户过来之后,在后台不同的机器之间不停的调用并返回。 当你发现一个问题的时候,这些日志落在不同的机器上,你也不知道问题到底出在哪儿,各个服务之间互相隔离,互相之间没有建立关联。所以导致排查问题基本没有任何手段,就是出了问题没法儿解决。 我们要解决的问题,我们刚才说日志互相隔离,我们就要把它建立联系。建立联系我们就有一个请求ID,然后结合RPC框架, 服务治理功能。假设请求从客户端过来,其中包含一个ID 101,到服务A时仍然带有ID 101,然后调用RPC1的时候也会标识这是101 ,所以需要 一个唯一的 请求 ID 标识 递归迭代的传递到每一个 相关 节点。第二个,你做的时候,你不能说每个地方都加,对业务系统来说需要一个框架来完成这个工作, 这 个框架要 对业务 系 统 是最低侵入原 则 , 用 JAVA 的 话 就可以用 AOP,要做到零侵入的原则,就是对所有相关的中间件打点,从接口层组件(HTTP Client、HTTP Server)至到服务层组件(RPC Client、RPC Server),还有数据访问中间件的,这样业务系统只需要少量的配置信息就可以实现全链路监控 。为什么要用日志?服务化以后,每个服务可以用不同的开发语言, 考虑多种开发语言的兼容性 , 内部定 义标 准化的日志 是唯一且有效的办法。最后,如何构建基于GPS导航的路况监控?我们刚才讲分布式服务追踪。分布式服务追踪能解决的问题, 如果 单一用 户发现问题 后 , 可以通 过请 求 ID 快速找到 发 生 问题 的 节 点在什么,但是并没有解决如何发现问题。我们看现实中比较容易理解的道路监控,每辆车有GPS定位,我想看北京哪儿拥堵的时候,怎么做? 第一个 , 你肯定要知道每个 车 在什么位置,它走到哪儿了。其实可以说每个车上只要有一个标识,加上每一次流动的信息,就可以看到每个车流的位置和方向。 其次如何做 监 控和 报 警,我们怎么能了解道路的流量状况和负载,并及时报警。我们要定义这条街道多宽多高,单位时间可以通行多少辆车,这就是道路的容量。有了道路容量,再有道路的实时流量,我们就可以基于实习路况做预警? 对应于 分布式系 统 的话如何构建? 第一 , 你要 定义 每个服 务节 点它的 SLA A 是多少 ?SLA可以从系统的CPU占用率、内存占用率、磁盘占用率、QPS请求数等来定义,相当于定义系统的容量。 第二个 , 统计 线 上 动态 的流量,你要知道服务的平均QPS、最低QPS和最大QPS,有了流量和容量,就可以对系统做全面的监控和报警。 刚才讲的是理论,实际情况肯定比这个复杂。微博在春节的时候做许多活动,必须保障系统稳定,理论上你只要定义容量和流量就可以。但实际远远不行,为什么?有技术的因素,有人为的因素,因为不同的开发定义的流量和容量指标有主观性,很难全局量化标准,所以真正流量来了以后,你预先评估的系统瓶颈往往不正确。实际中我们在春节前主要采取了三个措施:第一,最简单的就是有降 级 的 预 案,流量超过系统容量后,先把哪些功能砍掉,需要有明确的优先级 。第二个, 线上全链路压测,就是把现在的流量放大到我们平常流量的五倍甚至十倍(比如下线一半的服务器,缩容而不是扩容),看看系统瓶颈最先发生在哪里。我们之前有一些例子,推测系统数据库会先出现瓶颈,但是实测发现是前端的程序先遇到瓶颈。第三,搭建在线 Docker 集群 , 所有业务共享备用的 Docker集群资源,这样可以极大的避免每个业务都预留资源,但是实际上流量没有增长造成的浪费。 总结 接下来说的是如何不停的学习和提升,这里以Java语言为例,首先, 一定要 理解 JAVA;第二步,JAVA完了以后,一定要 理 解 JVM;其次,还要 理解 操作系统;再次还是要了解一下 Design Pattern,这将告诉你怎么把过去的经验抽象沉淀供将来借鉴;还要学习 TCP/IP、 分布式系 统、数据结构和算法。
hiekay 2019-12-02 01:39:25 0 浏览量 回答数 0

问题

【精品问答】python技术1000问(1)

为了方便python开发者快速找到相关技术问题和答案,开发者社区策划了python技术1000问内容,包含最基础的如何学python、实践中遇到的技术问题、python面试等维度内容。 我们会以每天至少50条的...
问问小秘 2019-12-01 21:57:48 456417 浏览量 回答数 22

问题

【阿里云产品公测】消息队列服务MQS java SDK 机器人应用 初体验

先去投票,回来再看内容吧 http://bbs.aliyun.com/read/178799.html 文章编号18 初体验 之 测评环境                   ...
啊里新人 2019-12-01 21:08:47 25480 浏览量 回答数 18

问题

Java技术1000问(3)【精品问答】

为了方便Java开发者快速找到相关技术问题和答案,开发者社区策划了Java技术1000问内容,包含最基础的Java语言概述、数据类型和运算符、面向对象等维度内容。 我们会以每天至少50条的速度,增...
问问小秘 2020-06-02 14:27:10 11463 浏览量 回答数 3

问题

SaaS模式云数据仓库MaxCompute 百问百答合集(持续更新20210409)

产品简介 什么是MaxCompute呢? https://developer.aliyun.com/ask/289579 使用MaxCompute需要什么专业技能? https://developer.aliyun.co...
亢海鹏 2020-05-29 15:10:00 42262 浏览量 回答数 34

云产品推荐

上海奇点人才服务相关的云产品 小程序定制 上海微企信息技术相关的云产品 国内短信套餐包 ECS云服务器安全配置相关的云产品 开发者问答 阿里云建站 自然场景识别相关的云产品 万网 小程序开发制作 视频内容分析 视频集锦 代理记账服务 阿里云AIoT