当前位置: 首页 > news >正文

网站开发 flex布局网站服务器空间不足

网站开发 flex布局,网站服务器空间不足,做网站都需要学什么语言,做网站做网站的公司技术传播的价值#xff0c;不仅仅体现在通过商业化产品和开源项目来缩短我们构建应用的路径#xff0c;加速业务的上线速率#xff0c;也会体现在优秀程序员在工作效率提升、产品性能优化和用户体验改善等小技巧方面的分享#xff0c;以提高我们的工作能力。 从本期开始不仅仅体现在通过商业化产品和开源项目来缩短我们构建应用的路径加速业务的上线速率也会体现在优秀程序员在工作效率提升、产品性能优化和用户体验改善等小技巧方面的分享以提高我们的工作能力。 从本期开始我们将邀请来自阿里巴巴各个技术团队的程序员涵盖中间件、前端、移动开发、大数据和人工智能等多个技术领域分享他们在工作中的小技巧 内容力求简短、实用和可操作。 第一期的分享嘉宾是来自阿里巴巴中间件技术团队的程序员 - 断岭他是阿里微服务开源项目 Dubbo 的项目组成员也是Java线上诊断开源项目 Arthas 的负责人。 第一期理解CPU分支预测提高代码效率 一、基础概念 Dubbo: 是一款高性能、轻量级的开源Java RPC框架提供了三大核心能力面向接口的远程方法调用智能容错和负载均衡以及服务自动注册和发现ChannelEventRunnable Dubbo 里所有网络事件的回调接口JMH即Java Microbenchmark Harness是专门用于代码微基准测试的工具套件。在性能优化的过程中可以使用JMH对优化的结果进行量化的分析。 二、需求缘起 在Stack Overflow上有一个非常著名的问题为什么处理有序数组要比非有序数组快从问题的结论来看是分支预测对代码运行效率的提升起到了非常重要的作用。 现今的CPU是都支持分支预测(branch prediction)和指令流水线(instruction pipeline)这俩的结合可以极大的提高CPU的工作效率从而提高代码执行效率。但这仅适用于简单的if跳转但对于Switch跳转CPU则没有太好的解决办法因为Switch本质上是据索引是从地址数组里取地址再跳转。 三、思考和方案假设 要提高代码执行效率一个重要的实现原则就是尽量避免CPU把流水线清空从Stack Overflow上的讨论结果来看通过提高分支预测的成功率是可以降低CPU对流水线清空的概率。那么除了在硬件层面是否可以考虑代码层面帮CPU把判断提前来提高代码执行效率呢 四、方案验证 在Dubbo的ChannelEventRunnable里有一个Switch来判断channel state。当一个channel建立起来之后超过99.9%的情况它的state都是ChannelState.RECEIVED我们可以考虑把这个判断提前。 以下通过JMH来验证把判断提前后是否就可以提高代码执行效率。 率。 public class TestBenchMarks { public enum ChannelState {CONNECTED, DISCONNECTED, SENT, RECEIVED, CAUGHT }State(Scope.Benchmark) public static class ExecutionPlan {Param({ 1000000 })public int size;public ChannelState[] states null;Setuppublic void setUp() {ChannelState[] values ChannelState.values();states new ChannelState[size];Random random new Random(new Date().getTime());for (int i 0; i size; i) {int nextInt random.nextInt(1000000);if (nextInt 100) {states[i] ChannelState.RECEIVED;} else {states[i] values[nextInt % values.length];}}} }Fork(value 5) Benchmark BenchmarkMode(Mode.Throughput) public void benchSiwtch(ExecutionPlan plan, Blackhole bh) {int result 0;for (int i 0; i plan.size; i) {switch (plan.states[i]) {case CONNECTED:result ChannelState.CONNECTED.ordinal();break;case DISCONNECTED:result ChannelState.DISCONNECTED.ordinal();break;case SENT:result ChannelState.SENT.ordinal();break;case RECEIVED:result ChannelState.RECEIVED.ordinal();break;case CAUGHT:result ChannelState.CAUGHT.ordinal();break;}}bh.consume(result); }Fork(value 5) Benchmark BenchmarkMode(Mode.Throughput) public void benchIfAndSwitch(ExecutionPlan plan, Blackhole bh) {int result 0;for (int i 0; i plan.size; i) {ChannelState state plan.states[i];if (state ChannelState.RECEIVED) {result ChannelState.RECEIVED.ordinal();} else {switch (state) {case CONNECTED:result ChannelState.CONNECTED.ordinal();break;case SENT:result ChannelState.SENT.ordinal();break;case DISCONNECTED:result ChannelState.DISCONNECTED.ordinal();break;case CAUGHT:result ChannelState.CAUGHT.ordinal();break;}}}bh.consume(result); }}验证说明 benchSiwtch里是纯Switch判断benchIfAndSwitch 里用一个if提前判断state是否ChannelState.RECEIVED Benchmark结果是 Result io.github.hengyunabc.jmh.TestBenchMarks.benchSiwtch: 576.745 ±(99.9%) 6.806 ops/s [Average] (min, avg, max) (490.348, 576.745, 618.360), stdev 20.066 CI (99.9%): [569.939, 583.550](assumes normal distribution)Run complete. Total time: 00:06:48Benchmark (size) Mode Cnt Score Error Units TestBenchMarks.benchIfAndSwitch 1000000 thrpt 100 1535.867 ± 61.212 ops/s TestBenchMarks.benchSiwtch 1000000 thrpt 100 576.745 ± 6.806 ops/s可以看到提前if判断提高了近3倍的代码效率这种技巧可以放在性能要求严格的地方。 五、总结 Switch对于CPU来说难以做分支预测某些Switch条件如果概率比较高可以在代码层设置提前if判断充分利用CPU的分支预测机制原文链接 本文为云栖社区原创内容未经允许不得转载。
http://www.pierceye.com/news/77381/

相关文章:

  • 定制设计网站公司做论文查重网站代理能赚到钱吗
  • 济南市建设信用网站网站建设服务器怎么设置
  • 企业网站建设 管理 维护 请找wordpress情感主题
  • 阳城做网站wordpress 无刷新评论
  • 链家做网站和手机app花了多少钱wordpress 链接下划线
  • 东莞设计网站公司白石洲附近做网站公司
  • 众车网是哪家公司网站外贸网站搭建服务商
  • 绍兴微网站建设个人做门户网站需要注册
  • 大网站成本云南网站建设维护
  • 湖南营销推广网站多少费用安全的网站制作公司
  • 建网站多少合肥制作网站价格
  • 阳春网站制作大连学网站制作
  • 辽宁省建设厅网站更新企业人事管理系统
  • 网站的联网信息怎么填网络营销第二板斧是什么
  • python购物网站开发流程图搜索引擎的优化方法有哪些
  • 网站建设中 gifwordpress 顶部自定义
  • 网站建设教程高清视频益阳网络营销
  • 小型旅游网站高邮城乡建设局 网站
  • 湛江网站制作计划网络推广工作好做不
  • 如何自己制作网页珠海网站建设优化
  • 广西网站建设设计做网站的需要哪些职位
  • 做网站建设最好的公司是网站模板50元
  • 江苏南京建设工程信息网站做经营网站怎么赚钱吗
  • 网站建设和seoseo免费优化工具
  • 做淘宝客优惠券网站还是APP赚钱会议网站定制
  • 想做网站开发兼职网站建设进展推进表
  • 淘宝内部卷网站建设有做国际网站生意吗
  • 青岛经济新区建设局网站信用中国 网站有那个部门支持建设
  • 兰甘肃网站建设百度权重
  • 网上代做论文的网站好微网站一键导航