架构的相关

作者: Alex1989 | 来源:发表于2021-03-22 10:32 被阅读0次

作用:模块化,分层,解耦,降低代码重合度。
设计一个图片缓存框架


image.png

图片通过什么方式进行读写过程?

  • 以图片URL的单向Hash值作为Key。
  • 流程:


    image.png

内存设计上需要考虑哪些问题?

  • 存储的Size(设计不同的方式)
    10KB以下图片:50个
    100KB以下:20个
    大于100KB:10个

  • 淘汰策略
    1.以队列的方式先进先出的方式淘汰。
    2.LRU算法,在30分钟是否使用过(提高检查触发频率),每次进行读写,切换前后台触发。。。注意开销。

磁盘设计需要考虑哪些问题?
1.空间大,读取效率低,大小限制(100MB)
2.淘汰策略(某以图片存储时间距今已超过7天)

网络设计
1.请求最大并发量
2.请求超时策略
3.请求的优先级

图片解码在哪个阶段
磁盘读取后或者网络请求返回后。

设计一个时长统计?
记录器:页面样式,瀑布流样式,自定义样式。
记录管理者:记录缓存,磁盘缓存,上传器。

image.png

记录数据由于某种原因丢失的方案?

  • 定时写磁盘
  • 限定内存的缓存条数

延时上传的场景?

  • 前后台切换
  • 无网到有网

上传时机的把控?

  • 立即上传
  • 延时上传
  • 定时上传

MVVM

image.png

客户端整体架构
独立于App通用层(网络,埋点,崩溃)
通用业务层(自定义控件,和业务相关)
中间层(协调,解耦)
业务层

image.png

cocoapods组件化管理的架构


image.png

业务之间的解耦通信

  • openUrl
  • 依赖注入

相关文章

  • 架构的相关

    作用:模块化,分层,解耦,降低代码重合度。设计一个图片缓存框架 图片通过什么方式进行读写过程? 以图片URL的单向...

  • 架构相关

    架构相关 图片缓存 阅读时长统计 复杂页面架构 客户端整体架构 架构&框架 模块化 分层 解耦 降低代码耦合度 图...

  • 架构相关

    一、图片缓存框架面试题 问题1:怎样设计一个图片缓存框架? 问题2:图片通过什么方式进行读写,过程是怎样的? 读写...

  • 架构相关的框架

    任务调度框架 Quartz.Net https://www.cnblogs.com/lwqlun/p/909510...

  • App架构相关

    参考:https://juejin.im/entry/58f45c5dda2f60005d3b30de

  • 知识架构相关

    1.如何从不断接受数据到有影响力?数据→信息→知识→洞见→智慧→影响力 在生活和工作中,会遇到各种各样的数据,数据...

  • 【翻译】安卓架构组件(2)-添加组件到你的项目中

    相关文章: 【翻译】安卓架构组件(1)-App架构指导 【翻译】安卓架构组件(3)-处理生命周期 【翻译】安卓架构...

  • ELK 架构之 Elasticsearch、Kibana、Log

    相关文章: ELK 架构之 Elasticsearch 和 Kibana 安装配置 ELK 架构之 Logstas...

  • ELK 架构之 Logstash 和 Filebeat 配置使用

    相关文章: ELK 架构之 Elasticsearch 和 Kibana 安装配置 ELK 架构之 Logstas...

  • Web信息架构——设计大型网站(第3版)

    第1章:信息架构的意义本章定义信息架构并进行类比,讨论信息架构的相关领域,说明信息架构为什么重要。 定义:什么是信...

网友评论

    本文标题:架构的相关

    本文链接:https://www.haomeiwen.com/subject/aahbcltx.html