Search Results

Search found 16971 results on 679 pages for 'blogs'.

Page 580/679 | < Previous Page | 576 577 578 579 580 581 582 583 584 585 586 587  | Next Page >

  • Change AccountName/LoginName for a SharePoint User (SPUser)

    - by Rohit Gupta
    Consider the following: We have an account named MYDOMAIN\eholz. This accounts Active Directory Login Name changes to MYDOMAIN\eburrell Now this user was a active user in a Sharepoint 2010 team Site, and had a userProfile using the Account name MYDOMAIN\eholz. Since the AD LoginName changed to eburrell hence we need to update the Sharepoint User (SPUser object) as well update the userprofile to reflect the new account name. To update the Sharepoint User LoginName we can run the following stsadm command on the Server: STSADM –o migrateuser –oldlogin MYDOMAIN\eholz –newlogin MYDOMAIN\eburrell –ignoresidhistory However to update the Sharepoint 2010 UserProfile, i first tried running a Incremental/Full Synchronization using the User Profile Synchronization service… this did not work. To enable me to update the AccountName field (which is a read only field) of the UserProfile, I had to first delete the User Profile for MYDOMAIN\eholz and then run a FULL Synchronization using the User Profile Synchronization service which synchronizes the Sharepoint User Profiles with the AD profiles. Update: if you just run the STSADM –o migrateuser command… the profile also gets updated automatically. so all you need is to run the stsadm –o migrate user command and you dont need to delete and recreate the User Profile

    Read the article

  • Using Bulk Operations with Coherence Off-Heap Storage

    - by jpurdy
    Some NamedCache methods (including clear(), entrySet(Filter), aggregate(Filter, …), invoke(Filter, …)) may generate large intermediate results. The size of these intermediate results may result in out-of-memory exceptions on cache servers, and in some cases on cache clients. This may be particularly problematic if out-of-memory exceptions occur on more than one server (since these operations may be cluster-wide) or if these exceptions cause additional memory use on the surviving servers as they take over partitions from the failed servers. This may be particularly problematic with clusters that use off-heap storage (such as NIO or Elastic Data storage options), since these storage options allow greater than normal cache sizes but do nothing to address the size of intermediate results or final result sets. One workaround is to use a PartitionedFilter, which allows the application to break up a larger operation into a number of smaller operations, each targeting either a set of partitions (useful for reducing the load on each cache server) or a set of members (useful for managing client result set sizes). It is also possible to return a key set, and then pull in the full entries using that key set. This also allows the application to take advantage of near caching, though this may be of limited value if the result is large enough to result in near cache thrashing.

    Read the article

  • OBIEE 11.1.1.6.2 BP1 patchset is released

    - by THE
    OBIEE 11.1.1.6.2 BP1 is available on My Oracle Support.The Oracle Business Intelligence 11.1.1.6.2 BP1 patchset comprises of the below patches: 14223977 Patch 11.1.1.6.2 BP1 (1 of 7) Oracle Business Intelligence Installer 14226980 Patch 11.1.1.6.2 BP1 (2 of 7) Oracle Real Time Decisions 13960955 Patch 11.1.1.6.2 BP1 (3 of 7) Oracle Business Intelligence Publisher 14226993 Patch 11.1.1.6.2 BP1 (4 of 7) Oracle Business Intelligence ADF Components 14228505 Patch 11.1.1.6.2 BP1 (5 of 7) Enterprise Performance Management Components Installed from BI Installer 11.1.1.6.x 13867143 Patch 11.1.1.6.2 BP1 (6 of 7) Oracle Business Intelligence 14142868 Patch 11.1.1.6.2 BP1 (7 of 7) Oracle Business Intelligence Platform Client Installers and MapViewer Note•    The Readme files for the above patches describe the bugs fixed in each patch, and any known bugs with the patch. •    The instructions to apply the above patches are identical, and are contained in the Readme file for Patch 14223977. To obtain the Patchset, navigate to  http://support.oracle.com  , select the "Patches & Updates" Tab and type in the patch number.

    Read the article

  • Reliance on Outlook (been a looong time, I know)

    - by AndyScott
    Do you feel that your development group too reliant on Outlook? Have you reached a point that you have to search your email for pertinent information when asked? What are you using? I realized things had gotten out of hand a couple weeks ago over a weekend. I was at my in-laws house (in the country, no PC/laptop, no internet connection; and I get an email on my phone that I needed to reply to, but I couldn't send without deleting items from my inbox/sent items/etc. Now mind you, I have rules set up to move stuff into folders, and files more than a month old are automatically moved to the PST; but generally don't manually move items to a PST until I have had a chance to 'work' the item. Please don't bother mocking my process, it's just the way I work. That being said, it was a frustrating process of 'I need all this information, what can I afford to lose'. I work on an International project (think lots of customers), and conversations in 9 or 10 different directions about 10-20 different things are not abnormal for a given day. I have found myself looking data up in Outlook because that's where it is. I think that I have reached the point now, where I don't feel that Outlook is up to the task of organizing the data that it contains.   When you have that many emails (200 or so a day), information seems to get lost at times, and I find that Outlook's search capabilities are lacking. Additionally, I find that any sort of organizational 'system' of sorting emails that can cover multiple topics is a lost cause. But at the same time, the old process of taking the information that I got from emails and moving it into another 'notes' type of program has proved to be too time consuming. Anyone out there have some better type of system? (Comments about the capacity of my brain, and it's ability to recall information not needed.)

    Read the article

  • enable iptables firewall on linux

    - by user13278061
     Here is a very basic set of instruction to setup a simple iptables firewall configuration on linux (redhat) Enable firewall log as root thenenter the following command, it launch a text gui #> setup first screen: Choose firewall configuration second screen: choose "Enabled" then "Customize" third screen: select you interface in "Trusted Devices", select "Allow Incoming" for "SSH" "Telnet" "FTP" (add eventually other ports, then press "OK" (2 times, then "Quit") At that point the firewall is enabled. You can start/stop/monitor using service iptables start/stop/status Change timeout to changed the tcp established connection timeout #> echo 120 >    /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_established Monitor connection in iptables tables for example if you want to track a connection establish from a host  152.68.65.207 #> cat /proc/net/ip_conntrack |grep 152.68.65.207

    Read the article

  • SSRS optional parameters settings

    - by Natasa Gavrilovic
    Recently I had to create couple SQL Server Reports (SSRS) with optional parameters built in. It took me a while to refresh memory how this can be done. It was very simple to create reports and processes behind, but connecting these two were are little bit challenging – stored procedure was tested and worked fine, but when the report was passing optional parameters it didn’t returned expected results. After tweaking SQL stored procedures and reports parameter options, the following approach turn to be the winning one. 1) Defining report parameters: From Menu bar select ‘View’ and ‘Report Data’ Newly open window should have ‘Parameters’ folder display Right click on this folder and select ‘Add new parameter...’                             Default values need to be added from a query                 A query values need to include ‘’ (empty string) – as highlighted                   2) SQL stored procedure should have CASE statements inside WHERE and it was the only way that a report was getting correct results back.

    Read the article

  • Social Media JSR 357 NOT approved by Executive Committee

    - by alexismp
    JSR 357 (Social Media API) has not passed the initial ballot which means, according to the JCP rules, that "the JSR submitter(s) who may revise the JSR and resubmit it within 14 days". Given the comments associated with the negative votes, it may be challenging for the submitters to address the concerns about the scope assessed by many as being too wide. Standardization is a difficult task and the JCP (the Executive Committee in fact) played its role by pointing out the challenges ahead of such a JSR as it was envisioned by its submitters, and thus the risk of never completing. If anything this proves that the JCP is working as expected. For those disappointed that Java will not get a standard "Social Media API" (for now at least), let me remind you of the recent open-sourcing of DaliCore.

    Read the article

  • Social Media Stations for Partners at Oracle OpenWorld

    - by rituchhibber
    Partners will have the opportunity to sign up for an individualized one-on-one session with a social media expert for a customized session to help them better engage with their customers and find new prospects online using social media tools on Sunday, 9/30 from 3-5 pm at the Esplanade Level, Moscone South and Monday, 10/1 from 10am-6pm, at the OPN Lounge, Moscone South, Exhibitor Level.  For additional questions, or to schedule an appointment contact [email protected], or for more information, click here.

    Read the article

  • Getting the most out of My Oracle Support

    - by JanSyss
    Normal 0 false false false EN-US X-NONE X-NONE MicrosoftInternetExplorer4 Have you often wondered where to go to find the latest information about My Oracle Support? Or are you a new user who simply needs help getting started with using My Oracle Support? The My Oracle Support User Resource Center provides easy access to what’s new, help and training to commonly used features, frequently asked questions, and more. Here you will find: My Oracle Support Speed Training – each module is less than 10 minutes Working Effectively with Support best practices – get the most out of your support experience Advisor Webcast Program – product based training with an interactive forum to ask questions  Additionally there are many ways to stay informed about My Oracle Support: Follow us on Twitter by subscribing to myoraclesupport Set up “Hot Topic” notifications once you log into My Oracle Support (Settings -> Hot Topics) Check out the “Stay Informed” content on the Get Proactive page for your product /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-qformat:yes; mso-style-parent:""; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin:0cm; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times New Roman","serif";}

    Read the article

  • VS2010: “The project type is not supported by this installation.”

    - by PearlFactory
    Was working @ home and then arrived nice and early on Monday armed with all this good stuff I did on the weekend. Login,Headphones On, Check Mail and make cup of tea. Goto load up Solution I was working on the weekend@ home What the !!!... If you edit the unloaded Project you will find something like this   For some Murphys rule reason even after hitting VS2010 with SP 1 my work box has lost MVC3 so thats why {E53F8FEA-EAE0-44A6-8774-FFD645390401} is unknown  This site has a list of the VS system guids i.e C#/VB.NET,Workflow etc www.mztools.com/articles/2008/mz2008017.aspx Goto MVC 3 site www.asp.net/mvc/mvc3 and get latest ver and you should be back on track   Note to self going a bit crazy on the Visual Studio Gallery http://visualstudiogallery.msdn.microsoft.com/ and installing maybe one to many tools might have something to do with my problems...lol

    Read the article

  • Context Sensitive JTable (Part 2)

    - by Geertjan
    Now, having completed part 1, let's add a popup menu to the JTable. However, the menu item in the popup menu should invoke the same Action as invoked from the toolbar button created yesterday. Add this to the constructor created yesterday: Collection<? extends Action> stockActions =         Lookups.forPath("Actions/Stock").lookupAll(Action.class); for (Action action : stockActions) {     popupMenu.add(new JMenuItem(action)); } MouseListener popupListener = new PopupListener(); // Add the listener to the JTable: table.addMouseListener(popupListener); // Add the listener specifically to the header: table.getTableHeader().addMouseListener(popupListener); And here's the standard popup enablement code: private JPopupMenu popupMenu = new JPopupMenu(); class PopupListener extends MouseAdapter { @Override public void mousePressed(MouseEvent e) { showPopup(e); } @Override public void mouseReleased(MouseEvent e) { showPopup(e); } private void showPopup(MouseEvent e) { if (e.isPopupTrigger()) { popupMenu.show(e.getComponent(), e.getX(), e.getY()); } } }

    Read the article

  • Javascript Inheritance Part 2

    - by PhubarBaz
    A while back I wrote about Javascript inheritance, trying to figure out the best and easiest way to do it (http://geekswithblogs.net/PhubarBaz/archive/2010/07/08/javascript-inheritance.aspx). That was 2 years ago and I've learned a lot since then. But only recently have I decided to just leave classical inheritance behind and embrace prototypal inheritance. For most of us, we were trained in classical inheritance, using class hierarchies in a typed language. Unfortunately Javascript doesn't follow that model. It is both classless and typeless, which is hard to fathom for someone who's been using classes the last 20 years. For the last two or three years since I've got into Javascript I've been trying to find the best way to force it into the class model without much success. It's clunky and verbose and hard to understand. I think my biggest problem was that it felt so wrong to add or change object members at run time. Every time I did it I felt like I needed a shower. That's the 20 years of classical inheritance in me. Finally I decided to embrace change and do something different. I decided to use the factory pattern to build objects instead of trying to use inheritance. Javascript was made for the factory pattern because of the way you can construct objects at runtime. In the factory pattern you have a factory function that you call and tell it to give you a certain type of object back. The factory function takes care of constructing the object to your specification. Here's an example. Say we want to have some shape objects and they have common attributes like id and area that we want to depend on in other parts of your application. So first thing to do is create a factory object and give it a factory method to create an abstract shape object. The factory method builds the object then returns it. var shapeFactory = { getShape: function(id){ var shape = { id: id, area: function() { throw "Not implemented"; } }; return shape; }}; Now we can add another factory method to get a rectangle. It calls the getShape() method first and then adds an implementation to it. getRectangle: function(id, width, height){ var rect = this.getShape(id); rect.width = width; rect.height = height; rect.area = function() { return this.width * this.height; }; return rect;} That's pretty simple right? No worrying about hooking up prototypes and calling base constructors or any of that crap I used to do. Now let's create a factory method to get a cuboid (rectangular cube). The cuboid object will extend the rectangle object. To get the area we will call into the base object's area method and then multiply that by the depth. getCuboid: function(id, width, height, depth){ var cuboid = this.getRectangle(id, width, height); cuboid.depth = depth; var baseArea = cuboid.area; cuboid.area = function() { var a = baseArea.call(this); return a * this.depth; } return cuboid;} See how we called the area method in the base object? First we save it off in a variable then we implement our own area method and use call() to call the base function. For me this is a lot cleaner and easier than trying to emulate class hierarchies in Javascript.

    Read the article

  • Gone in 60 Seconds: An Insecure Database is an Easy Target

    - by Troy Kitch
    According to the recent Verizon Data Breach Investigations Report, 98% of breached data originates from database servers and nearly half are compromised in less than a minute! Almost all victims are not even aware of a breach until a third party notifies them and nearly all breaches could have been avoided through the use of basic controls. Join us for this November 28th webcast to learn more about the evolving threats to databases that have resulted in over 1 billion stolen records. Also, hear how organizations can mitigate risks by adopting a defense-in-depth strategy that focuses on basic controls to secure data at the source - the database. There's no turning back the clock on stolen data, but you can put in place controls to ensure your organization won't be the next headline. Note, this webcast will be recorded for on-demand access after November 28th. 

    Read the article

  • Rethinking Oracle Optimizer Statistics for P6 Part 2

    - by Brian Diehl
    In the previous post (Part 1), I tried to draw some key insights about the relationship between P6 and Oracle Optimizer Statistics.  The first is that average cardinality has the greatest impact on query optimization and that the particular queries generated by P6 are more likely to use this average during calculations. The second is that these are statistics that are unlikely to change greatly over the life of the application. Ultimately, our goal is to get the best query optimization possible.  Or is it? Stability No application administrator wants to get the call at 9am that their application users cannot get there work done because everything is running slow. This is a possibility with a regularly scheduled nightly collection of statistics. It may not just be slow performance, but a complete loss of service because one or more queries are optimized poorly. Ideally, this should not be the case. The database optimizer should make better decisions with more up-to-date data. Better statistics may give incremental performance benefit. However, this benefit must be balanced against the potential cost of system down time.  It is stability that we ultimately desire and not absolute optimal performance. We do want the benefit from more accurate statistics and better query plans, but not at the risk of an unusable system. As a result, I've developed the following methodology around managing database statistics for the P6 database.  1. No Automatic Re-Gathering - The daily, weekly, or other interval of statistic gathering is unlikely to be beneficial. Quite the opposite. It is more likely to cause problems. 2. Smart Re-Gathering - The time to collect statistics is when things have changed significantly. For a new installation of P6, this is happening more often because the data is growing from a few rows to thousands and more. But for a mature system, the data is not changing significantly from week-to-week. There are times to collect statistics: New releases of the application Changes in the underlying hardware or software versions (ex. new Oracle RDBMS version) When additional user groups are added. The new groups may use the software in significantly different ways. After significant changes in the data. This may be monthly, quarterly or yearly.  3. Always Test - If you take away one thing from this post, it would be to always have a plan to test after changing statistics. In reality, statistics can be collected as often as you desire provided there are tests in place to verify that performance is the same or better. These might be automated tests or simply a manual script of application functions. 4. Have a Way Out - Never change the statistics without a way to return to the previous set. Think of the statistics as one part of the overall application code that also includes the source code--both application and RDBMS. It would be foolish to change to the new code without a way to get back to the previous version. In the final post, I will talk about the actual script I created for P6 PMDB and possible future direction for managing query performance. 

    Read the article

  • HTML Tidy for NetBeans IDE 7.4

    - by Geertjan
    The NetBeans HTML5 editor is pretty amazing, working on an extensive screencast on that right now, to be published soon. One thing missing is HTML Tidy integration, until now: As you can see, in this particular file, HTML Tidy finds 6 times more problems (OK, some of them maybe false negatives) than the standard NetBeans HTML hint infrastructure does. You can also run the scanner across the whole project or all projects. Only HTML files will be scanned by HTML Tidy (via JTidy) and you can click on items in the window above to jump to the line. Future enhancements will include error annotations and hint integration, some of which has already been addressed in this blog over the years. Download it from here: http://plugins.netbeans.org/plugin/51066/?show=true Sources are here. Contributions more than welcome: https://java.net/projects/nb-api-samples/sources/api-samples/show/versions/7.4/misc/HTMLTidy

    Read the article

  • Great SharePoint Community Resources

    - by Enrique Lima
    3 sites that any person working with SharePoint should visit are: SharePoint Magazine SharePoint Magazine is an online magazine dedicated to the world of SharePoint and related Information Worker Technologies. End User SharePoint Community driven content, at this point in time the site is a historical archive of content released. Nothing But SharePoint I see this as the natural evolution of EndUserSharePoint.com Follows on the same great principle of community driven content, but expanding from the world of End User to the IT Pro and Developer realms.

    Read the article

  • Exklusive Einladung zum Open Day bei Oracle in Potsdam!

    - by britta wolf
    Liebe Studenten, Absolventen und Young Professionals, wir laden euch am 8. November 2012  zum Oracle Open Day in unsere Potsdamer-Niederlassung ein! Professoren aller Studienrichtungen sind ebenfalls herzlich willkommen! Der Open Day bietet die tolle Gelegenheit OracleDirect in Potsdam in spannenden Vorträgen und Führungen kennen zu lernen. Ausserdem wird ein Job-Speeddating veranstaltet und am Abend ist ein informeller Networking-Event geplant. Ihr habt die einmalige Chance mit unserem Management-Team und Mitarbeitern ins Gespräch zu kommen.Wir freuen uns auf einen interessanten Austausch mit Interessenten aller Studien- und Berufsrichtungen! Führung I: 16:00 -17:00 Uhr Führung II: 17:30-18:30 Uhr Standort: Schiffbauergasse 14, 14467 Potsdam  Sowohl für die Führung (2 x 20 Teilnehmer), als auch für die Abendveranstaltung ist eine Anmeldung per Email bis zum 05. November erforderlich. Kontakt: [email protected]  (Telefon: 0331 200 7122)

    Read the article

  • Multi Level Security via Roles

    - by Geertjan
    I'm simulating a small scenario: Users can be dragged into roles; roles can be dragged into role groups. When a drop is made into a role group, a new role is created (WindowManager.getDefault().setRole("")). Then, when the user logs in, they log into a particular role. Depending on the role they log into, a different role group is assigned, which maps to a certain "role" in NetBeans Platform terms, i.e., the related level of security is applied and the related windows open.

    Read the article

  • Enterprise 2.0 Conference - this week!

    - by kellsey.ruppel
    We're excited to be at the Enterprise 2.0 Conference in Boston this week! We are looking forward to spending the next few days learning from Enterprise 2.0 thought-leaders and connecting with others who have an interest in social and collaborative technologies. If you are attending the conference, we encourage you to stop by booth #213, as we'd love to speak with you further about your challenges and success when it comes to social business transformation. New to social enterprise? Wondering what it means for your business? Take a look at how Bunny Inc. has transformed to become a social enterprise!

    Read the article

  • Database Insider - April 2012 issue

    - by Javier Puerta
    INFORMATION INDEPTH NEWSLETTER Database Insider Edition The  April issue of the Database Insider newsletter is now available.Includes, among many other: Oracle Advanced Analytics for Big Data Best Practices for Workload Management of a Data Warehouse on Oracle Exadata Best Practices for Implementing a Data Warehouse on Oracle Exadata

    Read the article

  • Online DATAFILE MOVE in Oracle Database 12c

    - by Ulrike Schwinn (DBA Community)
    Einige Operationen im Datenbankumfeld können nicht nur offline sondern auch online durchgeführt werden. Ein wichtiges Kennzeichen einer Online Operation ist dabei, dass Abfragen und DML Operationen während des Ablaufs der Operation (beispielsweise einer Reorganisation) ohne Unterbrechung weiter laufen können. Je nach einplanbarer Maintenance Zeit ist es daher durchaus wünschenswert, gewisse Operationen online durchzuführen. Generell gibt es in jedem Datenbankrelease einige Erweiterungen im Umfeld von Online Operationen. Besonders im aktuellen Release 12c gibt es eine Vielzahl neuer Operationen zu diesem Thema.Während der ersten 12c Veranstaltungen fand besonders das Kommando "DATAFILE ONLINE MOVE" besondere Aufmerksamkeit bei vielen Kunden. Aus diesem Grund wird im aktuellen Tipp dazu eine kleine Einführung gegeben.  Mehr dazu erfahren Sie hier. 

    Read the article

  • ODEE Green Field (Windows) Part 2 - WebLogic

    - by AndyL-Oracle
    Welcome back to the next installment on how to install Oracle Documaker Enterprise Edition onto a green field environment! In my previous post, I went over some basic introductory information and we installed the Oracle database. Hopefully you've completed that step successfully, and we're ready to move on - so let's dive in! For this installment, we'll be installing WebLogic 10.3.6, which is a prerequisite for ODEE 12.3 and 12.2. Prior to installing the WebLogic application server, verify that you have met the software prerequisites. Review the documentation – specifically you need to make sure that you have the appropriate JDK installed. There are advisories if you are using JDK 1.7. These instructions assume you are using JDK 1.6, which is available here. The first order of business is to unzip the installation package into a directory location. This procedure should create a single file, wls1036_generic.jar. Navigate to and execute this file by double-clicking it. This should launch the installer. Depending on your User Account Control rights you may need to approve running the setup application. Once the installer application opens, click Next. Select your Middleware Home. This should be within your ORACLE_HOME. The default is probably fine. Click Next. Uncheck the Email option. Click Yes. Click Next. Click Yes Click Yes and Yes again (yes, it’s quite circular). Check that you wish to remain uninformed and click Continue. Click Custom and Next. Uncheck Evaluation Database and Coherence, then click Next. Select the appropriate JDK. This should be a 64-bit JDK if you’re running a 64-bit OS. You may need to browse to locate the appropriate JAVA_HOME location. Check the JDK and click Next. Verify the installation directory and click Next. Click Next. Allow the installation to progress… Uncheck Run Quickstart and click Done.  And that's it! It's all quite painless - so let's proceed on to set up SOA Suite, shall we? 

    Read the article

  • Building Enterprise Smartphone App &ndash; Part 1: Why Build Smart Phone Apps

    - by Tim Murphy
    This is part 1 in a series of post based on a talk I gave recently at the Chicago Information Technology Architects Group.  Feel free to leave feedback. Intro Most of us already carry smartphones. We play games on them. We keep up with what is going on with our friends and our favorite teams. We take pictures of our kids at their events. But the question is if that is all they are good for. Many companies have aspects of their business that lend themselves to being performed by mobile devices. Some of them lean toward larger device such as tablets, but many can be executed on smartphones. This and the following articles will discuss some of the possible applications of smartphone technology for businesses, the platforms that are available and the considerations you need to make when building them. I'll take a look at some specific scenarios and wrap up with a couple of capabilities that are just emerging that can be used in the future. Why Build Enterprise Smartphone Applications So what are some of the ways that you can leverage smartphone technology to gain efficiency in your business or a clients business. There are a few major areas that I have seen mobile platforms being an advantage to. Your mobile sales force is a key candidate for leveraging smartphone apps.  They can visit clients in their retail location and place orders on site. It is a more personal approach which can gain you customer loyalty.  A sales person may also gather information about the way a client does business or who their target market is. This allows them you to focus marketing information or build customized support for your customer. You may also have need to track physical inventory in a store. This is something that has historically been done with laser scanners, but with the camera capabilities in today's phones and tablets it is possible to use more general multi-purpose devices.  This can save costs on both hardware and telecommunication contracts. Delivery verification is another area that historically has been the domain of specialized devices but can now be accomplished with smartphones.  This also reduces costs because it is also used for communicating with the driver and other operations.  Add to that the navigation capability of smartphones and you can see how the return on investment increases. Executives are always on the go. They spend most of their time in meetings and yet they need access to decision making information at their finger tips. With a smartphone app they can get alerts when major sales are closed or critical accounting process are completed that may need their attention. They can also answer questions by instantly pulling up BI reports. I have often heard operations support people say that they need things like VPN and RDP from their phones. If they can also have notifications of outages or critical support requests they can be react to situations without needing to be tied to their desks. These are all valid reasons to need smartphone applications.  In the next installment I will discuss platforms and features. del.icio.us Tags: Smartphones,Enterprise Smartphone Apps,Architecture

    Read the article

  • Exploring TCP throughput with DTrace (2)

    - by user12820842
    Last time, I described how we can use the overlap in distributions of unacknowledged byte counts and send window to determine whether the peer's receive window may be too small, limiting throughput. Let's combine that comparison with a comparison of congestion window and slow start threshold, all on a per-port/per-client basis. This will help us Identify whether the congestion window or the receive window are limiting factors on throughput by comparing the distributions of congestion window and send window values to the distribution of outstanding (unacked) bytes. This will allow us to get a visual sense for how often we are thwarted in our attempts to fill the pipe due to congestion control versus the peer not being able to receive any more data. Identify whether slow start or congestion avoidance predominate by comparing the overlap in the congestion window and slow start distributions. If the slow start threshold distribution overlaps with the congestion window, we know that we have switched between slow start and congestion avoidance, possibly multiple times. Identify whether the peer's receive window is too small by comparing the distribution of outstanding unacked bytes with the send window distribution (i.e. the peer's receive window). I discussed this here. # dtrace -s tcp_window.d dtrace: script 'tcp_window.d' matched 10 probes ^C cwnd 80 10.175.96.92 value ------------- Distribution ------------- count 1024 | 0 2048 | 4 4096 | 6 8192 | 18 16384 | 36 32768 |@ 79 65536 |@ 155 131072 |@ 199 262144 |@@@ 400 524288 |@@@@@@ 798 1048576 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 3848 2097152 | 0 ssthresh 80 10.175.96.92 value ------------- Distribution ------------- count 268435456 | 0 536870912 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 5543 1073741824 | 0 unacked 80 10.175.96.92 value ------------- Distribution ------------- count -1 | 0 0 | 1 1 | 0 2 | 0 4 | 0 8 | 0 16 | 0 32 | 0 64 | 0 128 | 0 256 | 3 512 | 0 1024 | 0 2048 | 4 4096 | 9 8192 | 21 16384 | 36 32768 |@ 78 65536 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 5391 131072 | 0 swnd 80 10.175.96.92 value ------------- Distribution ------------- count 32768 | 0 65536 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 5543 131072 | 0 Here we are observing a large file transfer via http on the webserver. Comparing these distributions, we can observe: That slow start congestion control is in operation. The distribution of congestion window values lies below the range of slow start threshold values (which are in the 536870912+ range), so the connection is in slow start mode. Both the unacked byte count and the send window values peak in the 65536-131071 range, but the send window value distribution is narrower. This tells us that the peer TCP's receive window is not closing. The congestion window distribution peaks in the 1048576 - 2097152 range while the receive window distribution is confined to the 65536-131071 range. Since the cwnd distribution ranges as low as 2048-4095, we can see that for some of the time we have been observing the connection, congestion control has been a limiting factor on transfer, but for the majority of the time the receive window of the peer would more likely have been the limiting factor. However, we know the window has never closed as the distribution of swnd values stays within the 65536-131071 range. So all in all we have a connection that has been mildly constrained by congestion control, but for the bulk of the time we have been observing it neither congestion or peer receive window have limited throughput. Here's the script: #!/usr/sbin/dtrace -s tcp:::send / (args[4]-tcp_flags & (TH_SYN|TH_RST|TH_FIN)) == 0 / { @cwnd["cwnd", args[4]-tcp_sport, args[2]-ip_daddr] = quantize(args[3]-tcps_cwnd); @ssthresh["ssthresh", args[4]-tcp_sport, args[2]-ip_daddr] = quantize(args[3]-tcps_cwnd_ssthresh); @unacked["unacked", args[4]-tcp_sport, args[2]-ip_daddr] = quantize(args[3]-tcps_snxt - args[3]-tcps_suna); @swnd["swnd", args[4]-tcp_sport, args[2]-ip_daddr] = quantize((args[4]-tcp_window)*(1 tcps_snd_ws)); } One surprise here is that slow start is still in operation - one would assume that for a large file transfer, acknowledgements would push the congestion window up past the slow start threshold over time. The slow start threshold is in fact still close to it's initial (very high) value, so that would suggest we have not experienced any congestion (the slow start threshold is adjusted when congestion occurs). Also, the above measurements were taken early in the connection lifetime, so the congestion window did not get a changes to get bumped up to the level of the slow start threshold. A good strategy when examining these sorts of measurements for a given service (such as a webserver) would be start by examining the distributions above aggregated by port number only to get an overall feel for service performance, i.e. is congestion control or peer receive window size an issue, or are we unconstrained to fill the pipe? From there, the overlap of distributions will tell us whether to drill down into specific clients. For example if the send window distribution has multiple peaks, we may want to examine if particular clients show issues with their receive window.

    Read the article

< Previous Page | 576 577 578 579 580 581 582 583 584 585 586 587  | Next Page >