Patents by Inventor Muhammad Usman Sharif

Muhammad Usman Sharif has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 11366744
    Abstract: Systems, methods and computer program products are described herein that can be used to help achieve a safe rollout of software in a production datacenter environment. In accordance with certain embodiments, cloud services requests from certain users of a cloud services system (e.g., users that are authorized to receive cloud services via computing devices running test versions of infrastructure software) are dynamically matched to clusters (groups of commonly-managed computing devices called nodes) that are capable of providing the requested services on nodes running test versions of infrastructure software. Within such clusters, the requested services are provided to the users on a subset of cluster nodes that run a test version of an infrastructure software component, while the remaining cluster nodes are not running the particular test version.
    Type: Grant
    Filed: September 29, 2017
    Date of Patent: June 21, 2022
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Reza Sherafat Kazemzadeh, Harsh Gupta, Binit R. Mishra, Yevgeniy Olegovich Razuvayev, Muhammad Usman Sharif, Li-Fen Wu, Cristina del Amo Casado, Avnish Kumar Chhabra, Hariharan Jayaraman, Li Xiong, Abhishek Singh
  • Patent number: 11038947
    Abstract: Methods, systems, apparatuses, and computer program products are provided that enable the automated deployment of microservices to a network-accessible server set. The automated deployment may be based on constraint(s) that are specified by a declarative deployment model that is associated with the microservice to be deployed. For example, a centralized deployment orchestrator may receive microservice(s) and their associated declarative deployment model(s). The deployment orchestrator analyzes the declarative deployment model(s) and determines which microservice(s) are to be deployed based on the constraint(s) specified by the declarative deployment model(s). The foregoing techniques advantageously determine when to deploy microservice(s), while also minimizing human intervention typically required to deploy microservice(s).
    Type: Grant
    Filed: April 21, 2017
    Date of Patent: June 15, 2021
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Yue Zhao, Siddharth Verma, Huaming Huang, Ash Beitz, Arbab Amjad, Muhammad Usman Sharif, Abhishek Singh, Avnish Kumar Chhabra
  • Patent number: 10740086
    Abstract: Methods, systems, and apparatuses manage rolling out of updates in a network-accessible server infrastructure which operates a plurality of instances of a supporting service. The supporting service is comprised by a plurality of service portions. The instances of the supporting service each include of the service portions. The instances of the supporting service are partitioned into a plurality of slices. Each instance is partitioned to include one or more of the slices, and each slice of an instance includes one or more of the service portions. A software update is deployed to the instances by applying the software update to the slices in a sequence such that the software update is applied to a same slice in parallel across the instances containing that same slice before being applied to a next slice, and waiting a wait time before applying the software domain to a next slice in the sequencing.
    Type: Grant
    Filed: December 13, 2018
    Date of Patent: August 11, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Huaming Huang, Yue Zhao, Muhammad Usman Sharif, Abhishek Singh, Avnish Kumar Chhabra
  • Publication number: 20190250901
    Abstract: Methods, systems, and apparatuses manage rolling out of updates in a network-accessible server infrastructure which operates a plurality of instances of a supporting service. The supporting service is comprised by a plurality of service portions. The instances of the supporting service each include of the service portions. The instances of the supporting service are partitioned into a plurality of slices. Each instance is partitioned to include one or more of the slices, and each slice of an instance includes one or more of the service portions. A software update is deployed to the instances by applying the software update to the slices in a sequence such that the software update is applied to a same slice in parallel across the instances containing that same slice before being applied to a next slice, and waiting a wait time before applying the software domain to a next slice in the sequencing.
    Type: Application
    Filed: December 13, 2018
    Publication date: August 15, 2019
    Inventors: Huaming Huang, Yue Zhao, Muhammad Usman Sharif, Abhishek Singh, Avnish Kumar Chhabra
  • Patent number: 10191731
    Abstract: Methods, systems, and apparatuses manage rolling out of updates in a network-accessible server infrastructure which operates a plurality of instances of a supporting service. The supporting service is comprised by a plurality of service portions. The instances of the supporting service each include of the service portions. The instances of the supporting service are partitioned into a plurality of slices. Each instance is partitioned to include one or more of the slices, and each slice of an instance includes one or more of the service portions. A software update is deployed to the instances by applying the software update to the slices in a sequence such that the software update is applied to a same slice in parallel across the instances containing that same slice before being applied to a next slice, and waiting a wait time before applying the software domain to a next slice in the sequencing.
    Type: Grant
    Filed: June 27, 2017
    Date of Patent: January 29, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Huaming Huang, Yue Zhao, Muhammad Usman Sharif, Abhishek Singh, Avnish Kumar Chhabra
  • Publication number: 20180373521
    Abstract: Methods, systems, and apparatuses manage rolling out of updates in a network-accessible server infrastructure which operates a plurality of instances of a supporting service. The supporting service is comprised by a plurality of service portions. The instances of the supporting service each include of the service portions. The instances of the supporting service are partitioned into a plurality of slices. Each instance is partitioned to include one or more of the slices, and each slice of an instance includes one or more of the service portions. A software update is deployed to the instances by applying the software update to the slices in a sequence such that the software update is applied to a same slice in parallel across the instances containing that same slice before being applied to a next slice, and waiting a wait time before applying the software domain to a next slice in the sequencing.
    Type: Application
    Filed: June 27, 2017
    Publication date: December 27, 2018
    Inventors: Huaming Huang, Yue Zhao, Muhammad Usman Sharif, Abhishek Singh, Avnish Kumar Chhabra
  • Publication number: 20180309630
    Abstract: Methods, systems, apparatuses, and computer program products are provided that enable the automated deployment of microservices to a network-accessible server set. The automated deployment may be based on constraint(s) that are specified by a declarative deployment model that is associated with the microservice to be deployed. For example, a centralized deployment orchestrator may receive microservice(s) and their associated declarative deployment model(s). The deployment orchestrator analyzes the declarative deployment model(s) and determines which microservice(s) are to be deployed based on the constraint(s) specified by the declarative deployment model(s). The foregoing techniques advantageously determine when to deploy microservice(s), while also minimizing human intervention typically required to deploy microservice(s).
    Type: Application
    Filed: April 21, 2017
    Publication date: October 25, 2018
    Inventors: Yue Zhao, Siddharth Verma, Huaming Huang, Ash Beitz, Arbab Amjad, Muhammad Usman Sharif, Abhishek Singh, Avnish Kumar Chhabra
  • Publication number: 20180293152
    Abstract: Systems, methods and computer program products are described herein that can be used to help achieve a safe rollout of software in a production datacenter environment. In accordance with certain embodiments, cloud services requests from certain users of a cloud services system (e.g., users that are authorized to receive cloud services via computing devices running test versions of infrastructure software) are dynamically matched to clusters (groups of commonly-managed computing devices called nodes) that are capable of providing the requested services on nodes running test versions of infrastructure software. Within such clusters, the requested services are provided to the users on a subset of cluster nodes that run a test version of an infrastructure software component, while the remaining cluster nodes are not running the particular test version.
    Type: Application
    Filed: September 29, 2017
    Publication date: October 11, 2018
    Inventors: Reza Sherafat Kazemzadeh, Harsh Gupta, Binit R. Mishra, Yevgeniy Olegovich Razuvayev, Muhammad Usman Sharif, Li-Fen Wu, Cristina del Amo Casado, Avnish Kumar Chhabra, Hariharan Jayaraman, Li Xiong, Abhishek Singh