010-68421378
sales@cogitosoft.com
Categories
AddFlow  AmCharts JavaScript Stock Chart AmCharts 4: Charts Aspose.Total for Java Altova SchemaAgent Altova DatabaseSpy Altova MobileTogether Altova UModel  Altova MapForce Altova MapForce Server Altova Authentic Aspose.Total for .NET Altova RaptorXML Server ComponentOne Ultimate Chart FX for SharePoint Chart FX CodeCharge Studio ComponentOne Enterprise combit Report Server Controls for Visual C++ MFC Chart Pro for Visual C ++ MFC DbVisualizer version 12.1 DemoCharge DXperience Subscription .NET DevExpress Universal Subscription Essential Studio for ASP.NET MVC FusionCharts Suite XT FusionCharts for Flex  FusionExport V2.0 GrapeCity TX Text Control .NET for WPF GrapeCity Spread Studio Highcharts Gantt Highcharts 10.0 版 HelpNDoc Infragistics Ultimate  ImageKit9 ActiveX ImageKit.NET JetBrains--Fleet JetBrains-DataSpell JetBrains--DataGrip jQuery EasyUI jChart FX Plus OPC DA .NET Server Toolkit  OSS ASN.1/C Oxygen XML Author  OSS 4G NAS/C, C++ Encoder Decoder Library OSS ASN.1 Tools for C with 4G S1/X2 OSS ASN.1/C# OSS ASN.1/C++ OPC HDA .NET Server Toolkit OPC DA .Net Client Development Component PowerBuilder redgate NET Developer Bundle Report Control for Visual C++ MFC  Sencha Test SPC Control Chart Tools for .Net Stimulsoft Reports.PHP Stimulsoft Reports.JS Stimulsoft Reports.Java Stimulsoft Reports. Ultimate Stimulsoft Reports.Wpf Stimulsoft Reports.Silverlight SlickEdit Source Insight Software Verify .Net Coverage Validator Toolkit Pro for VisualC++MFC TeeChart .NET Telerik DevCraft Complete Altova XMLSpy Zend Server

Chart FX-Chart Return Mechanisms and Web Farms Return Mechanisms

 

Chart FX-Chart Return Mechanisms and Web Farms

Return Mechanisms

To improve the level of responsiveness as well as enhancing support for different server architectures, Chart FX provides two ways of processing and returning charts to the browser. These mechanisms are provided by 2 methods: RenderControl and RenderToStream.

 

When a user hits a page containing the RenderControl method, a chart file is saved to disk and a HTML tag (IMG, OBJECT) is returned so the browser can know the location of the chart file on the web server. Finally, a second trip back to the server is necessary to pull the chart from the server and display it on the page as a static image or an active component. One of the greatest benefits for using RenderControl is that charts can be easily integrated into your existing web pages and allows support for automatic browser detection. However, saving a file to disk can have its toll on server performance.

 

On the other hand, the RenderToStream method prevents the chart file from being saved to disk by bit-streaming the chart directly to the browser; this process leads to fewer round-trips between the client and the server. However, integration to the web page is awkward because you must point to another file that returns the bit stream to the browser. Also, limited browser detection is provided using this methodology preventing your application from making "smart" decisions based on the user's browser capabilities.

 

In terms of performance, although the RenderToStream method is processor intensive, it allows developers to boost performance and scalability and permits the use of Chart FX on intricate server architectures such as web farms.

 

 

Web Farms (Server Clustering)

Once you hit a certain threshold, cost-effective scalability requires the use of multiple processors spread across multiple servers. In other words, you'll need a Web Farm.

 

We mentioned that when using the RenderControl method a chart file is saved to disk. The one problem on web farm architectures is that when the browser comes back to the server to retrieve such file; the HTTP request could be directed to another web server on the farm on which the chart was not originally saved, resulting in an empty chart placeholder on the page.

 

While changing the server affinity setting, which lets you instruct the service to route HTTP requests over the same physical server once the first request has gone through, may solve this issue, affinity slows the system down by requiring it to maintain a user-to-server mapping and perform a lookup upon each request. In other words, changing server affinity compromises scalability and the benefits of request-based load balancing are lost. For this reasons, Chart FX provides configuration mechanisms that will take care of this issue, allowing the servers to know exactly where the chart files are.

 

However, generating a chart file that will be saved on disk poses many server performance and scalability problems on a Web Farm. Therefore, the use of the RenderToStream method bit-streams the chart directly to the browser, preventing many of the above mentioned issues and providing a more natural integration to a web farm is more suitable in this environment.

Quick Navigation;

© Copyright 2000-2023  COGITO SOFTWARE CO.,LTD. All rights reserved