Patents by Inventor Mariyan D. Fransazov
Mariyan D. Fransazov 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: 11968085Abstract: According to examples, a host device may be instructed to pre-spawn a number of first host processes and a number of second host processes, in which the number of first host processes and the number of second host processes are defined in a first scaling constraint and are each greater than or equal to one. The host device may pre-spawn the second host processes in one or more computing nodes through identification of a host process of the first host processes that is unbound from a client session, termination of the identified host process, and pre-spawning of a second host process that provides a second version of the service based on the termination. The host device may also decrease the number of first host processes and increase the number of second host processes in the one or more computing nodes as defined in a second scaling constraint.Type: GrantFiled: September 15, 2022Date of Patent: April 23, 2024Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Romit Chattopadhyay, Mariyan D. Fransazov
-
Publication number: 20230016109Abstract: According to examples, a host device may be instructed to pre-spawn a number of first host processes and a number of second host processes, in which the number of first host processes and the number of second host processes are defined in a first scaling constraint and are each greater than or equal to one. The host device may pre-spawn the second host processes in one or more computing nodes through identification of a host process of the first host processes that is unbound from a client session, termination of the identified host process, and pre-spawning of a second host process that provides a second version of the service based on the termination. The host device may also decrease the number of first host processes and increase the number of second host processes in the one or more computing nodes as defined in a second scaling constraint.Type: ApplicationFiled: September 15, 2022Publication date: January 19, 2023Applicant: Microsoft Technology Licensing, LLCInventors: Romit CHATTOPADHYAY, Mariyan D. Fransazov
-
Patent number: 11477080Abstract: According to examples, a method for upgrading a version of a service across a plurality of computing nodes may include instructing a host device to pre-spawn a number of first host processes configured to provide a first version of the service in the computing nodes and to pre-spawn a number of second host processes configured to provide a second version of the service according to a first scaling constraint in the computing nodes. The method may also include, in response to receiving an indication that each of the second host processes is operating properly in the computing nodes, instructing the host device to decrease the number of first host processes and to increase the number of second host processes in the computing nodes as defined in a second scaling constraint.Type: GrantFiled: July 15, 2020Date of Patent: October 18, 2022Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Romit Chattopadhyay, Mariyan D. Fransazov
-
Publication number: 20200374371Abstract: According to examples, a method for upgrading a version of a service across a plurality of computing nodes may include instructing a host device to pre-spawn a number of first host processes configured to provide a first version of the service in the computing nodes and to pre-spawn a number of second host processes configured to provide a second version of the service according to a first scaling constraint in the computing nodes. The method may also include, in response to receiving an indication that each of the second host processes is operating properly in the computing nodes, instructing the host device to decrease the number of first host processes and to increase the number of second host processes in the computing nodes as defined in a second scaling constraint.Type: ApplicationFiled: July 15, 2020Publication date: November 26, 2020Applicant: Microsoft Technology Licensing. LLCInventors: Romit CHATTOPADHYAY, Mariyan D. Fransazov
-
Patent number: 10802844Abstract: An architectural software model in which browser-executable code and non-browser executable code of an application are distributed. The browser-executable code (such as markup language and script) is executed by a browser on perhaps a client machine, whilst the non-browser executable code (such as C# code as an example) is executed on a server or by a service. Such code typically is included within a single desktop application with an interoperability component operating between. The browser-executable code is able to communicate with the non-browser executable code using a request-response protocol. In order to facilitate communication with the non-browser-executable code, the non-browser executable code is provided in an environment that includes a request translator and a response translator. The environment includes an interface which honors the request/response protocol followed by the browser-executable code.Type: GrantFiled: September 30, 2016Date of Patent: October 13, 2020Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Andrew Michael Pennell, Irina Koulinitch, Olivier Colle, Mariyan D. Fransazov
-
Patent number: 10749743Abstract: According to examples, a method for upgrading a version of a service may include instructing a host device to pre-spawn a number of first host processes configured to provide a first version of the service in a computing node and to pre-spawn a number of second host processes configured to provide a second version of the service according to a first scaling constraint in the computing node. The method may also include, in response to receiving an indication that each of the second host processes is operating properly, instructing the host device to decrease the number of first host processes and to increase the number of second host processes as defined in a second scaling constraint.Type: GrantFiled: June 12, 2017Date of Patent: August 18, 2020Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Romit Chattopadhyay, Mariyan D. Fransazov
-
Patent number: 10686886Abstract: Aspects of the present disclosure relate to establishing a secure session between a client device and a stateful backend server or host. The system described herein uses an identity token and an authorization token to generate a globally unique identifier that is associated with the client device. The globally unique identifier is then used to create a one-to-one mapping between the client device and the backend server.Type: GrantFiled: October 19, 2016Date of Patent: June 16, 2020Assignee: Mirosoft Technology Licensing, LLCInventors: Mariyan D. Fransazov, Arnaud Christian Flutre, Mark David Overholt
-
Patent number: 10659561Abstract: According to examples, an apparatus may include a processor and a memory on which is stored machine readable instructions that are to cause the processor to receive, from a first node, a client request and a response corresponding to the processed client request, in which the first node is configured to generate the response by processing the client request on a service and processed client request is configured to change a state of the service. The instructions are also to cause the processor to receive, from the first node, a response corresponding to the received request, generate an entry including the received request and response, commit the generated entry into a journal, and send an acknowledgement of the received request and response to the first node after the generated entry is committed into the journal.Type: GrantFiled: June 9, 2017Date of Patent: May 19, 2020Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Romit Chattopadhyay, Peter Alfred Zabback, Mariyan D. Fransazov
-
Patent number: 10620974Abstract: Techniques are described for rendering a gallery control to a graphical user interface (GUI), the gallery control including first and second template replicas. For each template replica, a GUI-rendering component is instructed to render the template replica, a read application programming interface (API) call is placed to the GUI-rendering component, a target size of the template replica is determined based on the results of the read API call, and a write API call is scheduled to instruct the GUI-rendering component to update the dimension of the template replica to the target size. In response to determining that the target size of the dimension of either template replica is different than a default size, a write API call is placed to the GUI-rendering component to update an offset associated with each template replica and the scheduled write API calls are placed to the GUI-rendering component.Type: GrantFiled: October 17, 2017Date of Patent: April 14, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Laura S. Onu, Ahmed Mohamed Abbas Helmy Mohamed Kotb, Yasser Elsayed Shaaban, Mariyan D. Fransazov
-
Patent number: 10592864Abstract: Issuance of job tokens performed by an authorization computing entity so that authoring authorizations can be shared with other authors. Each of the job tokens represents an authorization to engage in a particular manner in an authoring session in which a declarative document is being authored. That engagement includes sharing one or more authorizations with other possible author. The declarative document is a computer program in the form of a list of declarative statements made in a declarative programming language. The management occurs by evaluating incoming requests to engage in various ways in an authoring session.Type: GrantFiled: December 9, 2016Date of Patent: March 17, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Arnaud Christian Flutre, Yasser E. Shaaban, Mariyan D. Fransazov, Olivier Colle, Andrew Michael Pennell, Anjli Chaudhry, William Hong Vong, Mark David Overholt
-
Publication number: 20180359143Abstract: According to examples, a method for upgrading a version of a service may include instructing a host device to pre-spawn a number of first host processes configured to provide a first version of the service in a computing node and to pre-spawn a number of second host processes configured to provide a second version of the service according to a first scaling constraint in the computing node. The method may also include, in response to receiving an indication that each of the second host processes is operating properly, instructing the host device to decrease the number of first host processes and to increase the number of second host processes as defined in a second scaling constraint.Type: ApplicationFiled: June 12, 2017Publication date: December 13, 2018Applicant: Microsoft Technology Licensing, LLCInventors: Romit CHATTOPADHYAY, Mariyan D. FRANSAZOV
-
Publication number: 20180359336Abstract: According to examples, an apparatus may include a processor and a memory on which is stored machine readable instructions that are to cause the processor to receive, from a first node, a client request and a response corresponding to the processed client request, in which the first node is configured to generate the response by processing the client request on a service and processed client request is configured to change a state of the service. The instructions are also to cause the processor to receive, from the first node, a response corresponding to the received request, generate an entry including the received request and response, commit the generated entry into a journal, and send an acknowledgement of the received request and response to the first node after the generated entry is committed into the journal.Type: ApplicationFiled: June 9, 2017Publication date: December 13, 2018Applicant: Microsoft Technology Licensing, LLCInventors: Romit Chattopadhyay, Peter Alfred Zabback, Mariyan D. Fransazov
-
Publication number: 20180232242Abstract: Techniques are described for rendering a gallery control to a graphical user interface (GUI), the gallery control including first and second template replicas. For each template replica, a GUI-rendering component is instructed to render the template replica, a read application programming interface (API) call is placed to the GUI-rendering component, a target size of the template replica is determined based on the results of the read API call, and a write API call is scheduled to instruct the GUI-rendering component to update the dimension of the template replica to the target size. In response to determining that the target size of the dimension of either template replica is different than a default size, a write API call is placed to the GUI-rendering component to update an offset associated with each template replica and the scheduled write API calls are placed to the GUI-rendering component.Type: ApplicationFiled: October 17, 2017Publication date: August 16, 2018Inventors: Laura S. Onu, Ahmed Mohamed Abbas Helmy Mohamed Kotb, Yasser Elsayed Shaaban, Mariyan D. Fransazov
-
Publication number: 20180109628Abstract: Aspects of the present disclosure relate to establishing a secure session between a client device and a stateful backend server or host. The system described herein uses an identity token and an authorization token to generate a globally unique identifier that is associated with the client device. The globally unique identifier is then used to create a one-to-one mapping between the client device and the backend server.Type: ApplicationFiled: October 19, 2016Publication date: April 19, 2018Applicant: Microsoft Technology Licensing, LLCInventors: Mariyan D. Fransazov, Arnaud Christian Flutre, Mark David Overholt
-
Publication number: 20180101372Abstract: Compiling a software application on a cloud computer system. An indication is received from a client at a cloud computer system. The indication comprises an indication that an uncompiled created software application is to be compiled. Receiving the indication includes receiving a document from the client, wherein the document comprises source code associated with the uncompiled created software application. The document is created at the client, wherein the client is at a location remote from the cloud computer system. In response to receiving the indication to compile the created software application, the document is compiled at the cloud computer system such that the compiled document is executable as a software application. The compiled document is then sent to the client for use as the software application, and stored in a cloud storage application repository such that sharing of compiled documents associated with executable software applications is possible.Type: ApplicationFiled: October 7, 2016Publication date: April 12, 2018Inventors: Mariyan D. Fransazov, Andrew Michael Pennell, Mark David Overholt, Madhur Vishwanath Badal, Rajasekaran Rangarajan
-
Publication number: 20180097817Abstract: Securely storing assets in a cloud computer storage service. Preparation to store assets for a user may comprise determining a location to store the assets, generating a write access signature, and sending the determined location and the signature to the user. A request is received from the user to store the assets. Such a request includes the assets, the location, and the signature. In response to receiving the request, a determination is made regarding the write access signature whether the request should be honored. When the request is honored, the assets are stored in the determined location and the write access signature is invalidated. Upon subsequent user requests to access the assets, short-term read access signatures are generated and provided to the user. The assets are written once per generated write access signature and reads are to be performed close in time to when short-term read access signatures are requested.Type: ApplicationFiled: September 30, 2016Publication date: April 5, 2018Inventors: Mohamed Abdelsalam Noureldien Aboubakr, Samuel Lenz Banina, Kyle Anthony Werner, David James Messner, Rajasekaran Rangarajan, Andrew Michael Pennell, Mariyan D. Fransazov
-
Publication number: 20170316219Abstract: Issuance of job tokens performed by an authorization computing entity so that authoring authorizations can be shared with other authors. Each of the job tokens represents an authorization to engage in a particular manner in an authoring session in which a declarative document is being authored. That engagement includes sharing one or more authorizations with other possible author. The declarative document is a computer program in the form of a list of declarative statements made in a declarative programming language. The management occurs by evaluating incoming requests to engage in various ways in an authoring session.Type: ApplicationFiled: December 9, 2016Publication date: November 2, 2017Inventors: Arnaud Christian Flutre, Yasser E. Shaaban, Mariyan D. Fransazov, Olivier Colle, Andrew Michael Pennell, Anjli Chaudhry, William Hong Vong, Mark David Overholt
-
Publication number: 20170315785Abstract: Management of an authoring session in which a declarative document is authored by multiple authoring entities. The declarative document is a computer program that is formed of declarative statements made in a declarative programming language. The management occurs by evaluating incoming requests to engage in various ways in an authoring session. The engagement might include initiating an authoring session, attaching to an existing authoring session, or performing actions (such as read, write, publish, save, share, and so forth). The management uses job tokens that are issued to the multiple authors in a manner that concurrent authoring is possible. Upon receiving the request for engagement in the authoring session, the corresponding job token is evaluated to determine whether the requestor is authored to engage as requested. The engagement is then performed if permitted.Type: ApplicationFiled: December 9, 2016Publication date: November 2, 2017Inventors: Arnaud Christian Flutre, Yasser E. Shaaban, Mariyan D. Fransazov, Olivier Colle, Andrew Michael Pennell, Anjli Chaudhry, William Hong Vong, Mark David Overholt
-
Publication number: 20170315713Abstract: Providing a web application that allows users to build applications by interacting with visualizations of code portions. A first application is generated that provides a user interface that includes at least a canvas that comprises a creation area within the user interface in which a user can create a second application. The user interface also includes one or more controls that allow a user to interact with visualizations of code portions using gestures to thereby create the second application on the canvas. The canvas allows a user to create the second application from scratch, such that no template to create the second application is provided. At least one of the one or more controls allows a user to input declarative code in the creation of the second application.Type: ApplicationFiled: September 30, 2016Publication date: November 2, 2017Inventors: Andrew Michael Pennell, Irina Koulinitch, Olivier Colle, Mariyan D. Fransazov, Muralidhar Sathsahayaraman, Yudhvir Singh Chauhan
-
Publication number: 20170315823Abstract: An architectural software model in which browser-executable code and non-browser executable code of an application are distributed. The browser-executable code (such as markup language and script) is executed by a browser on perhaps a client machine, whilst the non-browser executable code (such as C# code as an example) is executed on a server or by a service. Such code typically is included within a single desktop application with an interoperability component operating between. The browser-executable code is able to communicate with the non-browser executable code using a request-response protocol. In order to facilitate communication with the non-browser-executable code, the non-browser executable code is provided in an environment that includes a request translator and a response translator. The environment includes an interface which honors the request/response protocol followed by the browser-executable code.Type: ApplicationFiled: September 30, 2016Publication date: November 2, 2017Inventors: Andrew Michael Pennell, Irina Koulinitch, Olivier Colle, Mariyan D. Fransazov