首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏数字芯片实验室

    ASIC数字设计:前端设计、验证、后端实现

    设计通常以自顶向下的方式编写,系统具有层次结构,使得设计和调试更容易。 例如,可以使用assertions来检查设计的输出是否与预期相符。 设计的错误处理:通过验证来检测设计中可能存在的错误或异常情况,并测试设计如何应对或恢复。 设计的错误处理是仿真的重要目标,提高了设计的可靠性和安全性。例如,可以使用fault injection来模拟设计中可能发生的故障,并观察设计的反应和行为。 当设计非常大时,这种硬件加速验证方法能大幅度提高验证效率。 后端实现 在数字物理设计流程中需要对多个目标进行优化,包括面积,走线长度和功耗,以及需要确保物理实现之后的网表满足设计的时序要求。 以下将概述芯片数字后端的基本步骤: 物理设计的第一步是floor planning,定义芯片(die&core)的宽度和高度,也就是芯片的面积。

    1.7K20编辑于 2023-09-01
  • 来自专栏技术一号位指南(小诚信驿站)

    系统设计:Uber滴滴后端服务

    需求 设计Uber后端,让我们设计一个像优步这样的共享乘车服务,将需要乘车的乘客与有车的司机连接起来。类似服务:Lyft、滴滴、Via、Sidecar等。 难度等级:难,基于附近人或者搜索服务前提进行设计 1.什么是优步? Uber使其客户能够为出租车司机预订服务。优步司机用他们的私家车载着顾客四处转悠。 •一旦客户提出乘车请求,系统应能够实时联系驾驶员-时间 4.基本系统设计和算法 我们将采用设计Yelp时讨论的解决方案,并对其进行修改,使其适用于上述“优步”用例。

    5.3K95编辑于 2022-02-13
  • 来自专栏杨建荣的学习笔记

    后端分离的流程设计

    之前自己分享过一版前后端分离的开发流程。 运维前后端分离的开发流程 这里需要提两个概念,一个是本地前端,另外一个是平台前端,本地前端是在内部迭代使用,界面可以简单一些,功能为主;平台前端是一个具有全局规划性的前端技术,简单来说,这是专业前端 在这种情况下,后续如果要集成更加纯粹的前后端分离框架,其实就是水到渠成的事情了。

    70420发布于 2018-07-26
  • 来自专栏CSDN技术头条

    社交产品后端架构设计

    本篇文章会向读者展示几个架构设计的关键点,使一个社交应用能够成为真正的下一代社交产品。 为了应对上述的挑战,我们必须学习架构某些关键的元素,这将影响到系统的设计。以下是一些关键的决定和分析。 数据存储 数据和数据模型的存储是一个好架构的关键设计之一。 一个社交产品应该能够处理多种类型的数据,因此首先得充分分析数据并透彻理解,之后再设计数据模型和数据存储。 这将有助于保持我们的设计灵活,确保session不会绑定到特定的节点或服务器。 我没有提起任何设计领域相关的内容。这只是设计阶段,需要更深入的分析和了解系统的当前状态。 来自HackerNews的评论:https://news.ycombinator.com/item?

    1.5K70发布于 2018-02-09
  • 来自专栏JAVA高级架构

    高并发后端设计-限流篇

    系统在设计之初就会有一个预估容量,长时间超过系统能承受的TPS/QPS阈值,系统可能会被压垮,最终导致整个服务不够用。为了避免这种情况,我们就需要对接口请求进行限流。

    1.9K60发布于 2018-04-19
  • 来自专栏架构精进之路

    后端API接口,优雅设计方法分享

    在移动互联网,分布式、微服务盛行的今天,现在项目绝大部分都采用的微服务框架,前后端分离方式(题外话:前后端的工作职责越来越明确,现在的前端都称之为大前端,技术栈以及生态圈都已经非常成熟) 一般系统的大致整体架构图如下 接口交互 前端和后端进行交互,前端按照约定请求URL路径,并传入相关参数,后端服务器接收请求,进行业务处理,返回数据给前端。 着重介绍一下后端服务器如何实现把数据返回给前端? 返回格式 后端返回给前端我们一般用JSON体方式,定义如下: CODE状态码 code返回状态码,一般小伙伴们是在开发的时候需要什么,就添加什么。 我们应该可以参考HTTP请求返回的状态码(下面是常见的HTTP状态码): 我们可以参考这样的设计,这样的好处就把错误类型归类到某个区间内,如果区间不够,可以设计成4位数。 一般的设计是和code状态码一起设计,如: 再在枚举中定义,状态码 状态码和信息就会一一对应,比较好维护。 Data 返回数据体,JSON格式,根据不同的业务又不同的JSON体。

    51210编辑于 2024-11-23
  • 来自专栏小闫笔记

    Python后端技术栈(八)--系统设计

    ,开始咯~ 1.8.1 系统设计相关内容 1.什么是系统设计 2.系统设计需要掌握哪些知识 3.如何设计以及如何实现一个后端系统服务的设计 1.8.1.1 什么是系统设计 System Design 系统设计是一个定义系统架构 1.8.1.2 系统设计的难点 系统设计是中高级工程师必经之路。需要具备相关领域、算法的经验,有一定的架构设计能力。还需要熟悉后端的技术组件,比如消息队列、缓存、数据库和各种 web 框架。 另外一点就是具备文档撰写、流程图绘制、架构设计、编码实现等综合能力。 1.8.1.3 系统设计的要素 系统设计有三大要素: 1.适用场景和限制条件; 2.数据存储设计; 3.算法模块设计。 单点失败、多点失败、雪崩等问题 1.8.2 系统设计案例-短网址系统设计与实现 1.8.2.1 如何设计与实现一个短网址系统 我们需要考虑下面的几个问题: 1.什么是短网址系统? NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (`id`), KEY `idx_token` (`token`) ); 前端页面此处不提供,只提供后端代码

    1.8K40发布于 2019-07-18
  • 来自专栏猿天地

    后端Coder如何做好代码设计?

    一般说代码设计,可能涵盖以下几种: 整体设计 架构设计 领域模型设计 数据库设计 API设计 代码实现设计 代码设计的前提是,项目组成员已经完成正式的需求评审,并经过充分思考: 这个需求是为什么业务目标服务的 整体设计与架构设计 “项目的整体设计,有时会涵盖系统架构设计,这里要区分一下,系统架构设计并不完全等同于代码架构设计。 领域模型设计与数据库设计 在整体架构设计完成后, 要针对已经拆分的系统模块做模型设计, 尤其是在项目需求中有重要功能的部分要重点设计。 API是系统模块对外提供的服务,现行系统基本满足前后端分离的框架使用条件,所以一般可以简单理解为前端和系统交互的入口。 :接口实现设计、DB设计、缓存设计等 •上线计划等等

    94230发布于 2020-11-13
  • 来自专栏shigen的学习笔记

    后端数据字典的优雅设计

    背景今天讲到的是数据字典的设计。为什么要讲到这个呢,因为我下午在做开发的时候遇到了一个问题。 字段的注释需要变、后端代码需要变、前端的字典变,总之就是变变变。 关于字典的设计和使用,我只能在字典表的设计上有一种很清晰的认识,至于使用上,我觉得我自己还不是很熟,如后端的枚举类的设计、前端的字典设计,这些都和数据库的设计严格的且分开了,不能实现动态的配置。 更好的设计方式,我还在进一步的研究中。我很sorry纠结了两天的时间还是没有得到很好的解决。但是我相信问题的扔出总会有好的解决方式的,我也在研究ruoyi-vue的代码,期待在其中找到好的解决方案。 进一步的设计和心得我将会持续的分享和输出。参考文章:Spring boot中优雅的实现字典管理(

    2.2K40编辑于 2023-09-14
  • 来自专栏小闫笔记

    Python后端技术栈(三)--设计模式

    Python 应用 在动态语言里面,设计模式关注的会偏少一点。 不像在 Java 里面,会涉及到大量的设计模式。比如三种设计模式:创建型、结构型和行为型。 之所以动态语言比如 Python 里面设计模式讲的少,并不是说它不重要,而是动态语言自己已经实现了一些设计模式,比如迭代器模式,装饰器模式 Python 本身就支持。 1.3.3.1常见创建型设计模式 工厂模式(Factory):解决对象创建问题。 Python 应用 1.3.4.1常见结构型设计模式 装饰器模式(Decorator):无需子类化扩展对象功能 代理模式(Proxy):把一个对象的操作代理到另一个对象 适配器模式(Adapter):

    1.3K30发布于 2019-07-18
  • 来自专栏好好学java的技术栈

    后端生成Token架构与设计详解

    个人原创100W+访问量博客:点击前往,查看更多 作者:巨人大哥 cnblogs.com/jurendage/p/9219041.html 目的:Java开源生鲜电商平台-Java后端生成Token目的是为了用于校验客户端 ②后端处理:对于每次提交到后台的数据必须校验,也就是通过前端携带的令牌(一串唯一字符串)与后端校验来判断当前数据是否有效。

    1.9K30发布于 2020-12-08
  • 来自专栏后端码匠

    后端分离架构设计(权限模型)

    因为本职工作是后端开发,比较清楚权限控制一个管理系统应该必须具备的核心功能,而且是可以做到通用的。打算写写关于管理系统前后端分离方面的文章,也是做一个知识的总结。 为了解决这些问题,便有了对ACL设计的改进,相同权限的用户放到同一个分组里,分组与权限挂钩,不再是用户直接与权限挂钩。 在MAC的设计中,每一个对象都有一些权限标识,每个用户同样也会有一些权限标识,而用户能否对该对象进行操作取决于双方的权限标识的关系,这个限制判断通常是由系统硬性限制的。 这种权限控制方式就是ABAC(Attribute-Based Access Control)(基于属性的权限控制),也被一些人称为是权限系统设计的未来。 后端做权限校验的时候,还是先按RBAC模型的控制方式进行校验(是否具备订单查看权限),然后根据当前操作对象(也就是实体),取出用户所属角色关联的对应实体的规则。

    2.3K11发布于 2020-02-26
  • 来自专栏Linyb极客之路

    浅谈后端高并发的几种设计方法

    在高并发的应用场景中,前端需要更快的渲染速度,而后端不仅需要更快的接口速度,而且还需要保证数据的一致性。 前端设计中可能会有静态页面,cdn等的优化手段,在后端架构中,通常也需要引用高并发程序的解决方案。下面主要谈谈后端的处理方案。 但是在做设计的时候最好考虑到在不停机的状态下可以对库表进行扩容。 2.sql的优化。查询时指定列名,使用索引,用between代替in...... 代码设计中如果可以不要锁最好就不使用,如果要使用也优先考虑重入锁,乐观锁。

    1.2K10发布于 2019-01-08
  • 来自专栏Java实战博客

    如何设计后端交互的数据加密?

    设计后端交互的数据加密涉及到保护数据在传输过程中的安全性。以下是一种常见的设计方案: 1. 使用 HTTPS 协议 确保前后端之间的通信通过 HTTPS 协议进行。 数据加密算法 在前后端交互过程中,可以使用对称加密算法和非对称加密算法来保护数据的安全性。 对称加密算法: 前后端可以约定一个对称加密算法(如AES),前端使用后端提供的公钥对数据进行加密,后端使用私钥对数据进行解密。 非对称加密算法: 前后端可以使用非对称加密算法(如RSA),前端使用后端的公钥对数据进行加密,后端使用自己的私钥对数据进行解密。 3. 安全传输协议 在前后端交互过程中,使用安全的传输协议进行数据传输,如 JSON Web Token (JWT) 等。 通过以上设计方案,可以保障前后端交互数据的安全性和完整性。

    2.4K10编辑于 2024-03-07
  • 来自专栏IT从业者张某某

    后端分离的接口设计规范

    接口设计规范 前后端分离的接口设计规范可以参考以下几点: RESTful API设计风格:RESTful API是一种基于HTTP协议的API设计风格,它包括使用HTTP动词(GET、POST、PUT、 这种设计风格可以使接口设计更加简洁明了。 接口版本控制:为了保证接口的兼容性和可维护性,应该对接口进行版本控制。可以在URI中加入版本号,或者使用HTTP头部来表示版本信息。 参数传递方式:接口设计中应该明确参数的传递方式,包括GET、POST、PUT、DELETE等方式,以及参数的格式(JSON、XML、表单等)。 安全性考虑:接口设计中应该考虑安全性问题,包括身份验证、接口权限控制、数据加密等。 接口举例说明: 假设有一个用户管理系统,前端需要实现用户列表、用户详情、新增用户、修改用户、删除用户等功能,后端提供相应的接口。

    87910编辑于 2023-10-16
  • 来自专栏四火的唠叨

    后端来类比前端设计的思考

    很高兴团队中有越来越多的人能够跳出某种语言、某种平台的局限性,站到抽象的层次上思考一些设计上的问题。在我的印象中,似乎前端开发总是容易给人以随意、混乱的感觉,可真的是前端技能不容易掌握吗? 可是越是看似简单的东西,就越难以精通地掌握,没有好的设计来引导,如果技能不过硬,很容易陷入混乱的困顿之中。 回到标题,来看看怎么从后端设计来类比前端设计。 一、模型和业务逻辑的分离: 写后台代码,模型层是很容易划分出来的,模型的建立是整体设计的第一步,美工在设计页面时,最关注一个页面最宏观的盒子模型;而 Service 层,适合存放业务逻辑,它们可以做到无状态和池化的 五、分离模板和数据: 模板和数据的整合,似乎是后端应该做的事,例如 FreeMarker 模板和数据的整合,最终形成页面。 六、归纳一下:抽象,是软件设计的核心艺术。即便前端设计,也一样。

    41000编辑于 2022-07-15
  • 来自专栏精讲JAVA

    后端分离实践的架构设计

    后端分离实践有感 现在到处都是前后端分离的实践。然而一些项目在从一体化 Web 设计转向前后端分离的架构时,仍然会碰见各种各样的问题。 在设计清晰的情况下,后端只需要以数据为中心对业务处理算法负责,并按约定为前端提供 API 接口;而前端使用这些接口对用户体验负责。 2. 客户要求必须这么操作,但是这个设计做不到; 3:前端还要跟后端对接 换句话说,前端可以成为项目沟通的中心,因此前端比后端更合适承担主导的角色。 接口设计 接口分后端服务实现和前端调用两个部分,技术上并不难,因为都是成熟的技术,接口设计才是难点。前面提到前后端会产生一些矛盾。 从前端的角度来看,重点关注的是用户体验;而从后端的角度来看,重点关注的是数据完整、有效、安全。解决这些矛盾的着眼点就是接口设计

    88930发布于 2018-07-30
  • 来自专栏后端技术探索

    后端Api设计的一些注意项

    App所有数据都来源于服务器,App和服务器交互普遍是采用http请求接口的方式,那么在搭建和维护一个后端Api项目时候需要注意哪些问题呢? 1. 另外比较重要的一点是,在设计之初要对业务进行足够的抽象化,让设计本身能尽量支持变化,比如以后此接口是否会增加某个分类属性,返回结果的格式是否再多包装一层就可以应对万一后面版本要增加另一块数据。 总结一下就是: 要能区分不同版本,通过url或者参数 设计时候尽量考虑之后扩展,足够抽象化 支持根据版本进行强制升级 4.

    1.1K30发布于 2018-08-09
  • 来自专栏玩转JavaEE

    后端分离开发,RESTful 接口如何设计

    尽管这种风格定义的约束细节并没有为所有场合设计,但是的确可以广泛适用。 虽然一般建议尽可能重用现有的格式,但是对正确设计的媒体类型正在变得越来越宽容。 在设计良好的基础结构中,客户端可以从任意应用程序发起请求。虽然一定会有与应用程序相关的特定行为,但是加入与应用程序无关的行为越多,系统就会越有弹性,也更容易维护。 它支持可重用模式和特性,通过模式和特性实现功能 API 设计的标准化。 它支持 Markdown 格式的 API 文档,可以围绕设计过程进行社交,并且支持模拟数据的托管实现,以便于在 API 实现之前对其进行测试。

    3.1K01发布于 2019-11-13
  • 来自专栏Java技术栈

    后端分离如何做权限控制设计

    近几年随着react、angular、vue等前端框架兴起,前后端分离的架构迅速流行。但同时权限控制也带来了问题。 网上很多前、后端分离权限仅仅都仅仅在描述前端权限控制、且是较简单、固定的角色场景,满足不了我们用户、角色都是动态的场景。 推荐:前后端分离必备的接口规范,十分接地气。 网上的方案都是说:根据资源控制增、删、改、查等等,比如针对用户就是用户的创建、修改、删除、查询等。 后端权限 传统前后端不分离的情况下,路由都在后端统一管理,简单的方法比如用户管理页面/user/那么他里面使用的接口都使用/user/add、/user/delete等相同前缀,那么只要判断用户拥有/user 前后端分离后面临的问题: 接口 方案: 需要控制权限的接口进行上传管理(可以做成管理页面) 每个页面和功能可以关联多个接口,比如用户页面关联了用户查询接口和用户编辑接口,用户删除功能关联用户删除接口 后端对请求的路径进行判断

    7.4K11发布于 2019-11-11
领券