随着智能设备普及和移动互联网发展,移动端应用逐渐成为用户新入口,重要性越来越突出.但企业一般是先有PC端应用,再推APP,APP 1.0版的功能大多从现有PC应用平移过来,没有针对移动自身特点考虑APP的架构.随着APP越来越复杂,功能和非功能要求越来越高,架构的先天不足逐渐成为大型APP升级的瓶颈. 本文作者结合大型移动应用的落地实践,从服务端架构设计角度,阐述如何进行升级优化,为后续APP做大做强奠定架构基础,供大家参考. 本文主要内容包括: V1架构 问题分析 V2架构 智能升降级 总结…
如果不太熟悉MyBatis使用的请先参见MyBatis官方文档,这对理解其架构设计和源码分析有很大好处. 一.概述 MyBatis并不是一个完整的ORM框架,其官方首页是这么介绍自己 The MyBatis data mapper framework makes it easier to use a relational database with object-oriented applications. MyBatis couples objects with stored procedur…
最近做一个项目,在项目搭建之前,花了些许时间去思考一下如何搭建一个合适的架构.一开始的构思是希望能合理的把应用的各部分进行分离,使其像金字塔一样从上往下,下层为上层提供功能. 在平常项目中,总是有很多应用级的变量,如果不合理存放,势必在项目变得越来越庞大的时候难以掌控.所以我基于这一关键点出发,定义出了第一层:配置层. 基于配置层,我继承出总共5层,先把我的架构图贴上: [系统配置层] 配置层负责存储应用内的通用变量,也就是可以在应用内多个界面或者模块中使用到的变量都会在这里预先配置,例如我会配…
本文翻译自PhilCalçado的官网:https://philcalcado.com/2015/09/18/the_back_end_for_front_end_pattern_bff.html 对我们的架构演变保持透明是我们技术战略的一部分.我们在无数场合谈过的但从未真正详细描述过的东西是我们应用后端用于前端架构模式或BFF.这篇文章记录了我对如何开发和应用这种技术的理解. 我对软件组件演变的理解 在完全分布式架构变得可行之前,组织通常会在一个或多个层中构建应用程序.层是应用程序的高度耦合但…
总体来讲,GPS部标平台的软件开发是一个对网络通信和应用程序之间通信的技术应用密集型的开发工作,也是有一定设计技术含量的工作. 1.设计通信接口 在设计的时候,根据职责划分,拆分成不同的应用子系统,对各个子系统进行功能隔离,并通过设计接口规定子系统直接的调用规约. 首先我们根据部标平台的要求,设计和开发出各个主要的服务器子系统,这是平台中最核心的子系统,在实际的应用中,由于车辆规模的大小和行业需求,还会扩展出各种业务子系统.核心子系统如下: 1)808GPS服务器,采用交通部的部标808协议,负…
上一篇文章简单介绍了java如何调用ffmpeg的命令:http://blog.csdn.net/eguid_1/article/details/51777716 上上一篇介绍了nginx-rtmp服务器的搭建:http://blog.csdn.net/eguid_1/article/details/51749830 这一篇将进一步深挖java对ffmepg命令的控制并最终实现服务接口化 本篇文章源码:http://download.csdn.net/detail/eguid_1/9563637…
以下全部转自:http://www.cnblogs.com/pqjwyn/p/7401918.html 前端组件化的痛点在前端组件化横行的今天,确实极大的提升了开发效率.不过有一个问题不得不被重视,拟引入的这些html.css.js代码有可能对你的其他代码造成影响.虽然我们可以通过命名空间.闭包等一系列措施来加以防备,不过还是存在这些隐患.为了解决这些问题,有一个基本大家遗忘的技术还是可以了解一下的,那就是Web Components. Web Components 是什么Web Compone…
前言 世界上最难的两件事是: 1. 把我的思想放进你的脑袋 2. 把你的钱放进我的口袋 第二点我们不探讨,因为这是众所周知的,不信?过来试试:) 对于第一点,对我们程序员来说,其实也是我个人一直强调的,很多事情的成败,其实就在于掌舵人的思想层面是否认知是一致的,当我们对于一个事物的认知不在同一层面,就好比我们的划桨是不统一的,这是不能发挥最大的生产力. 你碰到过吗? 当我们进入一家新公司的时候,每个人都需要对公司的业务系统进行了解,当你不得不向别人解释系统是如何工作的,业务模块是如何串联的,子系…
在当前很多的GPS平台当中,有很多是基于asp.NET+siverlight开发的遗留项目,代码混乱而又难以维护,各种耦合和关联,要命的是界面也没见到比Javascript做的控件有多好看,随着需求的增多,平台已经臃肿不堪. 设计基于.NET的GPS部标平台,我们坚定不移的选择了基于JQUERY+Asp.NET MVC来作为前端交互和后台处理的框架.选用一个灵活的脚手架,同时团队又能掌握这个脚手架为团队所用. 对于一个web应用项目,基于MVC的框架,前面文章提到过,最大的优点就是结构清晰,强制…
一.概述 由于架构设计一里面如果多平台公用相同Key的缓存更改配置后需要多平台上传最新的缓存配置文件来更新,比较麻烦,更新了架构设计二实现了缓存配置的集中管理,不过这样有有了过于中心化的问题,后续在看看如何修改 总体设计思路如下: 项目结构如下: 二.服务端(提供Key配置文件管理及将Key配置存到缓存中) KeyConfigList.xml缓存Key配置文件[与前一版一致] <?xml version="1.0" encoding="utf-8" ?>…