Monitoring AD CS issued certs ?

Has anyone come across any good tools for monitoring certificates in particular their life time ?  I know possible through SCOM but the issue is when you need to monitor many different certificates from many different environments it becomes difficult
to apply different metrics. 
Is there a ready built tool or script which is easy to manage and use which can either query the CA database periodically for particular certs and their expiry and alert when they are 50%, 60%, 70%...through their life time or a tool which can
look in a folder for CERs and check the expiry.
Thanks in advance !

I'm not aware about ready solutions, but some frameworks exist. For example, in PowerShell you can query CA database, select non-expired certificates, calculate lifetime and report if necessary. For example, with
PowerShell PKI module you could do this:
$requests = Get-CA ca01.company.com | Get-IssuedRequest -Filter "NotAfter -gt $(Get-Date)" -Property "CertificateTemplate" | %{
$lifetime = (((Get-Date) - $_.NotBefore).days / ($_.NotAfter - $_.NotBefore).days) * 100
Write-Host "Certificate issued to '$($_.CommonName)' based on template '$($_.CertificateTemplate)' reached $lifetime % of lifetime"
this code will type lifetime to a console. You can replace Write-Host cmdlet with your own handler. $lifetime variable will store elapsed lifetime in percents.
My weblog: en-us.sysadmins.lv
PowerShell PKI Module: pspki.codeplex.com
PowerShell Cmdlet Help Editor pscmdlethelpeditor.codeplex.com
Check out new: SSL Certificate Verifier
Check out new:
PowerShell FCIV tool.

Similar Messages

  • Monitor wake up issues

    I am having inconsistent monitor wake up issues.  If the CPU is on and past the bios boot and THEN I turn on the monitor all works properly.  However, the monitor will NOT come out of power save / hibernation mode.  I have tried different monitors with the same behavior and am on my second ATI 9600 Pro 128MB graphic card.  I have installed the latest Catalyst drivers (4.0) and flashed the MoBo bios (amibos 3.31a) and still no change in the effect.  I am suspect that it is some bios setting but can't figure out what the issues are.  As a side note, I have had twice in about 40 boots an error:  "Dram timing is too tightly so reload timing".  The DRAM timing configuration is enabled by SPD at 3-3-3-8-8 (unchangeable in current mode).
    Suggestions greatly appreciated!
    SYSTEM:
    P4 2.8GHz w/ 800M and 512K
    2 DDR 256 / DDR400 CL3 PC3200 (Kingston)
    ATI Radeon 9600 Pro 128MB
    MSI 865PE Neo2-PLS
    Viewsonic E90f 19" monitor
    Windows XP Pro SP1.1a

    You can set your DDR timings manually by disabling SPD in BIOS. Before you do that, be aware of the exact description of your memory sticks and try to find out in Kingston Website about possible timing values.
    About the problems with the Monitor, in BIOS you should have a menu 'Power Management Features'. If you have
    ACPI Standby State                         choose  'Auto'
    Re-Call VGA BIOS at S3 resuming     choose 'Disabled'
    Power Management/APM                   choose ' Enabled'
    Suspend Time Out                                       'Disabled'
    On this menu if you have a Submenu 'Set Monitor Events', get in, and if you have something like
    FDC/LPT/COM Ports          choose 'Monitor'
    Primary Master IDE                      'Monitor'
    Primary Slave                              'Ignore'
    Secondary Master IDE                  'Monitor'
    Secondary Slave IDE                    'Ignore'

  • T420 Intel HD 3000 Dual Monitor Mini Dock Issue

    I have a T420 with Intel HD 3000 using a Mini Dock, attached to Two external Monitor one VGA and the other one DVI, the problem is that the DVI won't work simultaneously with the VGA, after update the Intel HD driver to the last version available 9.17.10.2843, both monitors works simultaneously, but If I Reboot, Hibernate, Standby or Undock, only the primary monitor (VGA) works and the Extended (DVI) stop working.
    I tried using another video driver version and updating the BIOS but not luck, Does any one know if there is a solution for this issue???

    Are you trying to keep the internal display on when you connect to the external monitors? 
    When asking for help, post your question in the forum. Remember to include your system type, model number and OS. Do not post your serial number.
    Did someone help you today? Press the star on the left to thank them with a Kudo!
    If you find a post helpful and it answers your question, please mark it as an "Accepted Solution"! This will help others with the same question in the future.
    My TPs: Twist 2HU: i5-3317U Win 8 Pro, 4GB RAM 250GB Samsung 840 | T420 4177CTO: i5-2520M, HD+, Win 7 Pro x64, 8GB RAM, Optimus, 160GB Intel 320 SSD, Intel 6300 WiFi, BT 3.0 | T400 2764CTO: P8700, WXGA, Win 7 Ult x64, AMD 3470, 8GB RAM, 64GB Samsung SSD, BT, Intel 5300 WiFi | A20m 14.1" PIII 500 (retired). Monitors: 2x Dell U2211h IPS 100% sRGB calibrated w/ Spyder3.

  • TES 6.1Fault monitor Poll Time issue

    Currently we have installed TES Master Version 6.1.0.310, plugin(tes-6.0) - version 6.1.0.301, with a Primary Master, Backup Master and Fault monitor.  However, viewing the Mastert Status and the fault monitor tab, it seems that the "Poll Time" display is stuck in 07/29/2013 on today's display.  I have stopped the primary, backup masters, Also, stopped Fault monitor, removed fault monitor installation, reboot the server, installed the fault monitor software and patched it, and still displaying 07/29/2013 on today's client manager, Master Status, Fault monitor tab.   Have a ticket open with CISCO, but have not received feedback yet. Did anyone have seeing the same issue if you have a Fault tolerance environment on TES 6.1?     thanks!         

    WE have corrected this situation with the fault monitor for Tidal 6X.  Basically, since we are on the early stages on the project, we have decided to blow away the entire TES 6X environment by removing the installation on the Primary, Backup masters, fault monitor, client manager, and as far as drop the database and remove the Tidal account from the SQL server.  We also cleaned any Tidal folders left over on the windows servers after uninstalled the TES Software and reboot the corresponding windows servers.  Performed and clean out-of-the box installation, by installing the primary master first and check the logs.  Once the master stop as we left empty the demo code field during the installation, then we apply the permanent license and started the primary master.  Proceed to install the fault monitor, backup master and client manager as TES base line 6.1.0.133.  Proceed to stop Client manager, Primary, backups master, fault monitor.  Restart Fault monitor, started primary master, Backup master and Client Manager successfully.  Log into the Client manager and master status pane for the fault monitor was showing the correct date/time as expected.  Subsequently, patch the entire environment to the latest patch for master 6.1.0.310 and plugin(tes-6.0) 6.1.0.301, and TES Client manager and master status pane for the fault monitor was showing the correct date/time as expected once again,

  • Root and Issuing Cert Enrolment

    I have a 2012 2 tier PKI environment. Offline root CA and 4 Enterprise Issuing CA's. The offline root CA has been published to AD, the enterprise issuing CA's are in AD by virtue of being enterprise CA's. My question is how did the root cert and the issuing
    CA's certs get into the local stores on each machine. Auto enrolment has not been configured on the computer OU's.
    Is there  a GPO in the default domain policy, or is there another mechanism that does this? certutil -pulse does an reenrolment for any pending certs (root and issuing included) what mechanism is this calling, ie.e what protocol is this using.
    Thanks

    Hi,
    as soon you have published a root or intermediate ca certificate to AD the certs get distributed to all machines with the next gpupdate run. There is no actual GPO setting required for that. But there is a GPO setting so that you can distribute ca certs
    from e.g. business partners to only a subset of machines.
    Depending on you configuration autoenrollment triggers over API the pki client to request a new certificate over RPC/DCOM or HTTPS (not /certsrv !) (http://social.technet.microsoft.com/wiki/contents/articles/7734.certificate-enrollment-web-services-in-active-directory-certificate-services.aspx#How_Certificate_Enrollment_Web_Service_Differs_from_CA_Web_Enrollment)
    Regards,
    Lutz
    it is not quite correct statement. Certificate publishing relies on autoenrollment/enrollment triggers. If there is no configured autoenrollment policy and no enrollment (manual) performed, the certificate will not be downloaded from Active Directory.
    My weblog: en-us.sysadmins.lv
    PowerShell PKI Module: pspki.codeplex.com
    PowerShell Cmdlet Help Editor pscmdlethelpeditor.codeplex.com
    Check out new:
    SSL Certificate Verifier
    Check out new:
    PowerShell FCIV tool.

  • External monitor and wireless issue

    hi. i have a white macbook (2.0 ghz core 2, 1 gb ram, 10.5.6), and it's been having lots of issues recently: the fan won't stop running, it won't sleep, and the hard drive crashed and had to be replaced. before and after the hard drive was replaced, when i would connect the laptop to an external LG monitor, the wireless wouldn't work. the connection would timeout whenever i would try and connect. this is a fairly recent problem, as it worked fine for a year. restarting the monitor, the laptop, and the router don't help. the only thing i can think of is that it's not working because the laptop isn't sleeping properly--the fan keeps running hard when it's closed and connected to the monitor. still, the other functions work fine when connected to the monitor. if anyone has any suggestions, i'd greatly appreciate them. thanks.

    It's possible you're infected with some type of malware. This theory would be supported by the fact that the problem went away, at least for a while when you reformatted, and many times the same malware infection will repeat for the same user who exibits the same behavoir. 
    A simple test would be to burn and boot from a Linux LiveCD, try using the Linux operating system  and see if it exhibits any of the same problems, if it does, then you're likely looking at a GPU issue which would be serious. If it runs fine under linux, then I'd suggest you reformat and install windows and either be more careful about what you do online, or get some better protection. 
    There are many Linux distributions you can use, one of the most popular that works well with thinkpads is Ubuntu (ubuntu.com). Boot with the option to not make any changes to your computer. This will run the operating system solely from your cdrom drive, performance will be slower, but the point is we want to know if your graphic hardware is working properly or not and this is an easy test.
    Good luck, and I hope your problem is only related to software.
    ThinkPad W-510 i7-820QM(1.73-3.06GHz) Quad Core... ThinkPad T500, T9900, 8gb SSD...FrankNpad T-60p/61p (X9000 2.8ghz) 8gb SSD ips FlexView...ThinkPad T-61p (T9300 2.5ghz) 8gb ram...Thinkpad X-61 Tablet 4gb ram...ThinkPad A-31 (1.9ghz P4 1.5gb ram)

  • Windows 8 (64bit) - LI2341t Monitor - Unsigned driver issue

    Please direct me to a working link to download SIGNED WINDOWS 8.1 drivers for the LI2341t Monitor. The drivers that are included on the install disk all fail to install on Windows 8.1 because they are unsigned.
    Thanks.
    Solved!
    Go to Solution.

    Did you ever find an answer for this.  I have the same issue where by the monitor works, but when I go to install the windows drivers from the disk they will not install on my Windows 8.1 machine as it says they are unsigned.  When I try to download drivers from the Lenovo site it downloads some program that required you sign up and pay.  I am at witts end here.  Like I said everything works, but it would be nice to have the correct drivers.
    Lenovos support seems to be non-existent.  This may be the last thing I buy from them.

  • N97 mini, CK-200, Nokia Battery Monitor 1.3 - issu...

    Hej! When Nokia Battery Monitor is installed on my N97 mini, I cannot make or recive calls on my Nokia CK-200 via Bluetooth, because the other party does not hear my voice. When uninstalling the application, the problem is gone. I have the latest firmware on everything. Please advise. LVPVS

    As there is nothing that the User can do to set anything in the NBM application.. this may be a Bug that needs to be reported. I am afraid the application is no more Beta.. so reporting at Nokia Beta Labs may / may not serve the purpose.. but you may contact Nokia by using the 'Contact Us' tab at the top of this page and find out the proper channel to report the issue...

  • Intermittent monitor profile loading issue

    This is not a Photoshop specific question.  But I thought that I would post in the photoshop forum since most advanced photoshop users use color management and profile their monitors and surely someone else has also had this issue.
    I am running CS5 on a Win 7x64 machine.  I use Monico optix to profile a 2 monitor setup, profiling each monitor separately.  I am using an Nvidia GTX-285 video card for two samsung LCD monitors.
    After profiling each monitor using Optix, the monitors look fine.  And most of the time after rebooting, my colors look fine.  But occasionally, one or both monitors' colors are WAY off.  Everything looks red.  I can reboot and most of the time, the monitors look fine following a reboot.  But the problem happens again.  I can re-profile and the monitors look fine again.
    I am believe  that there may a bug in windows (or monico optix) that is preventing the saved profiles from loading every time that I start windows.  Is there a way that I can tell windows to load the profile after reboot when it fails to work properly?  Does anyone know why the profiles do not work sometimes, but sometimes they do?

    Just to confirm, when you say "Everything looks red", do the colors look wrong across the board or just in color-managed applications?
    Color-management is a two-part process.  Gamma settings are loaded into the video drivers at startup/login to effectively calibrate your gamma, and the monitor color profile is used by color-managed apps to fine tune the colors.
    Assuming your answer is "even non-color-managed applications are affected", then it's the gamma settings load that seems fouled up.
    To me that sounds like a possible video driver issue, or a conflict with software and the system...
    Is this Monico device starting any software at login that's supposed to load the calibration settings?  Is it advertised to be Windows 7 compatible?
    Are your video drivers up to date?
    -Noel

  • MBP 15' 2011 Mini display port to LED monitor/TV resolution issue

    Hello,
    I have just bought  a Mini Display - VGA adaptor which I am plugging to a Samsung 23' LED monitor via a VGA/DVI adaptor. I manage to get a clone view but unfortunately, the maximum resolution offered is 1650x1050 when my Samsung LED monitor has resolution of 1920x1080. Therefore, part of the screen remains black.
    ... also, when I plug the Mini display port to VGA to my Philips 47' VGA port, I got a message that there must be a problem with the connection and again, maximum resolution offered if 1440x10..  and therefore 20% of my TV screen space remains black.
    At last, when I launch Windows7 via bootcamp, this is even wost : when I select the max resolution (1440x10..), the pictures remains freezed on my TV and I can't even move the mouse (while the mouse is moving on the MBP screen...). Only coming back to a very small resolution 800x600 or so will enable me to get control of the win7 desktop on my TV...
    Thank you in advance for your help
    Greg

    I have just bought  a Mini Display - VGA adaptor which I am plugging to a Samsung 23' LED monitor via a VGA/DVI adaptor. I manage to get a clone view but unfortunately, the maximum resolution offered is 1650x1050 when my Samsung LED monitor has resolution of 1920x1080. Therefore, part of the screen remains black.
    If you are using the monitor in Mirrored mode, its resolution setting will always be exactly the same as that of the built-in display. I presume you have the high-res 15" MBP display, with a native resolution of 1680 x 1050. If that's true, I suspect your monitor is indeed in Mirrored mode, and that's why you can't set the monitor to its native 1920 x 1080 resolution. If you press Command+F1 to toggle the mnitor into Extended Desktop mode, you'll be able to set its resolution independently of the built-in display. Or if you use only the external monitor, with the MBP display closed, you'll be able to set the monitor's resolution to whatever it supports.
    http://support.apple.com/kb/HT3131
    Stacking one video adapter on top of another is usually a recipe for trouble. It's always best to keep things as simple as possible. Use one adapter that gets you from mini-Displayport to whatever input you want to use on the TV or monitor.

  • External Monitor Not Supported Issue (Sony Bravia)

     Lenovo Community
    I have been tryign to connect my Lenovo T400 to a Sony Bravia (KDL-32S300 LCD Digital Color Flat Screen) and unable to use the "Projector Only" (to watch recorded movie) video output setting.  I am given a non-supported error.  Yet I can use either the "Duplicate" or "Extended" video output setting just fine.  The Sony Bravia even works fine with a more recent Lenovo T520.  I also connect my Lenovo T400 to an older Smsung SyncMaster 930B  as an external monitor and that works fine in the rojector" mode too.  Can't figure this one out.
    Jeff

    Are you using the latest available drivers?
    Do you have an HD3470 switchable or just the integrated GMA4500?
    W520: i7-2720QM, Q2000M at 1080/688/1376, 21GB RAM, 500GB + 750GB HDD, FHD screen
    X61T: L7500, 3GB RAM, 500GB HDD, XGA screen, Ultrabase
    Y3P: 5Y70, 8GB RAM, 256GB SSD, QHD+ screen

  • T60 think pad and HP monitor w2338h compatibility issues

    I bought an HP w2338h monitor (23") for use with my T60 laptop, but was unsuccessful in getting it properly set up. My husband had no problem plugging it into his HP laptop (all settings were fine).  The problem when it’s hooked up to my IBM laptop is the image is a bit distorted (squished) but, more importantly, when editing 2 documents, the side-by-side view doesn't show the entire page and the font isn’t legible.  So for each document, you’d have to use the scroll bars (up, down and sideways) to actually make sure you’re seeing everything (which is no better than the laptop).  Also, when my laptop cover was closed, the monitor went to sleep.  Are there particular settings on the laptopI should adjust?

    which T60 model do you have, what GPU does it use, the Intel 950 or the ATI x1300/1400?
    Regards,
    Jin Li
    May this year, be the year of 'DO'!
    I am a volunteer, and not a paid staff of Lenovo or Microsoft

  • IMAC 27 inch as external monitor for PC issue

    I'm not able to use the iMAC 27 inch as external monitor with my PC which has ATI 5870 graphic card. I use DP (displayport)-> miniDP cable. Any help?
    Thank you.
    M

    It appears that none of the ATI HD 5XXX series cards are compatible with the iMac unless they have a mini displayport connector (ie eyefinity models and the $700 HD 5970). The ATI HD 4xxx models with the full size display port do seem to work also. I am curious as to whether this incompatibility carried over into the new iMac models....

  • Computer to monitor/tv connection issue

    I recently bought an early 2008 mac pro. it was connected to an acer monitor by dvi connection which worked okay.    
    recently i tried hooking up the computer to a samsung tv and its hdmi connection. i used a rocketfish minidisplay port adapter from the
    computer to the tv.  the tv recognizes an hdmi connection but says no signal.
    then i tried a dvi-hdmi cable directly from the computer to the tv. same result...tv recognizes the connection but says no signal.
    I am using a radeon 5770 graphics card.
    any help would be appreciated.

    Bring up the Displays preference panel. Since there is no picture on the TV at this point use the Gather Windows button to get the displays preference window for the TV on to your main monitor.  Then for the TV make sure the resolution is 1080i, 1080p, or 720p as appropriate.  Also make sure the refresh rate is 60 Hz (maybe 120 Hz if that is shown and the TV handles 120 Hz).
    Wouldn't hurt to click Detect Displays either.

  • Transfer monitor with concurrency issues

    I'm currently working on a project where the user may choose a domain name from a source list to fetch a bunch of subpages. To the user this looks like a single, large download. Since this may or may not take a substantial amount of time each download is attached to a TransferMonitor instance that reports the currently downloaded datasize and transfer rate back to the GUI. This is working fine when there is only one active download, but if there are several simultaneous downloads the monitor fails. After digging into it a bit I can see how it fails, but I think my limited experience with threads are keeping me from seeing why and what I can do to correct it. To illustrate the problem I've created a very simple fetcher:
    public class Fetcher implements Runnable {
        private int bytes = 0;
        private int millis = 0;
        public void run() {
            for (int i = 0; i < 50; i++) {
                HttpURLConnection connection = null;
                InputStreamReader reader = null;
                try {
                    // Setup
                    connection = (HttpURLConnection)new URL(
                                        URI).openConnection();
                    StringWriter writer = new StringWriter();
                    reader = new InputStreamReader(
                        connection.getInputStream());
                    // Process
                    char[] buffer = new char[4096];
                    int count = 0, n = 0;
                    long start = System.currentTimeMillis();
                    while ((n = reader.read(buffer)) != -1) {
                        writer.write(buffer, 0, n);
                        count += n;
                    // Report
                    millis += System.currentTimeMillis() - start;
                    bytes += count;
                } catch (MalformedURLException e) {
                } catch (IOException e) {
                } finally {
                    // Finalize
                    IOUtils.closeQuietly(reader);
                    connection.disconnect();
            System.out.println(Thread.currentThread().getName() + "\n" +
                            "Transfer rate: " + new DecimalFormat("0.00",
                            new DecimalFormatSymbols(Locale.UK)).format(
                            ((long)bytes * 1024) / (millis * 1000)) +
                            " kb/s\nAvg millis/cycle: " + millis / 50 + "\n");
    }This class fetches the same webpage over and over (50 times/cycles). My real one of course does not. Finally it prints the average transfer rate and the number of milliseconds used per cycle. The following code is used to run this fetcher:
    public static void main(String[] args) throws InterruptedException {
        long start = System.currentTimeMillis();
        Thread thread1 = new Thread(new Fetcher(), "Thread 1");
        thread1.start();
        thread1.join();
        long end = System.currentTimeMillis();
        System.out.println("Total millis: " + (end - start));
    }Gives me the following print out:
    Thread 1
    Transfer rate: 908.00 kb/s
    Avg millis/cycle: 58
    Total millis: 11343Considering my bandwidth is 12 mbit (~1500 kb/s) it seems a bit low. How come?
    Either way I've learned to live with this so I'll try using the fetcher with several threads at the same time:
    public static void main(String[] args) throws InterruptedException {
        long start = System.currentTimeMillis();
        Thread thread1 = new Thread(new Fetcher(), "Thread 1");
        thread1.start();
        Thread thread2 = new Thread(new Fetcher(), "Thread 2");
        thread2.start();
        Thread thread3 = new Thread(new Fetcher(), "Thread 3");
        thread3.start();
        Thread thread4 = new Thread(new Fetcher(), "Thread 4");
        thread4.start();
        Thread thread5 = new Thread(new Fetcher(), "Thread 5");
        thread5.start();
        thread1.join();
        thread2.join();
        thread3.join();
        thread4.join();
        thread5.join();
        long end = System.currentTimeMillis();
        System.out.println("Total millis: " + (end - start));
    }Gives me the following print out:
    Thread 5
    Transfer rate: 728.00 kb/s
    Avg millis/cycle: 72
    Thread 4
    Transfer rate: 704.00 kb/s
    Avg millis/cycle: 75
    Thread 3
    Transfer rate: 678.00 kb/s
    Avg millis/cycle: 78
    Thread 1
    Transfer rate: 716.00 kb/s
    Avg millis/cycle: 74
    Thread 2
    Transfer rate: 681.00 kb/s
    Avg millis/cycle: 77
    Total millis: 13109The number of milliseconds per cycle per thread has only increased from 58 to ~75 making the five threads combined only 15% slower to fetch five times the content - with a combined transfer rate of ~3500 kb/s, which of course is not right. If I throttle the bandwidth at e.g 30 kb/s using NetLimiter it actually reports the correct rates (~6 kb/s per thread). As already mentioned I probably do not yet have a good enough understanding of threads (one may fetch while another is busy doing something else etc.).
    The question is; How can I set this up so that it reports the correct transfer rate independantly of the number of threads fetching? Perhaps there even exists an API that can do this for me?

    HTTP networks have caching proxies, so repeated requests to the same URL don't have to travel neyond the cache, until the page expires. Your test is at best fetching the page from the target server once and then getting it from the nearest cache 49 times, or 499 times. That's OK as long as you're aware that that is what you're measuring, and as long as that situation has some correspondence with reality in your actual application.Certainly a good point and something I did not considerate. The Fetcher below is simplified, but works fairly similar to the real thing. It extracts data from a Calendar object to compute the URL. At the end of each cycle one hour is added to the Calendar:
    public class Fetcher implements Runnable {
        private Calendar c;
        private int bytes = 0;
        private int millis = 0;
        public Fetcher(Calendar c) {
            this.c = c;
        private HttpURLConnection getConnection() throws IOException {
            // Return a connection from a URL computed using c
        public void run() {
            for (int i = 0; i < 500; i++) {
                HttpURLConnection connection = null;
                InputStreamReader reader = null;
                try {
                    // Setup
                    connection = getConnection();
                    StringWriter writer = new StringWriter();
                    reader = new InputStreamReader(
                            connection.getInputStream());
                    // Read-Write
                    char[] buffer = new char[4096];
                    int count = 0, n = 0;
                    long start = System.currentTimeMillis();
                    while ((n = reader.read(buffer)) != -1) {
                        writer.write(buffer, 0, n);
                        count += n;
                    // Report
                    millis += System.currentTimeMillis() - start;
                    bytes += count;
                    } catch (MalformedURLException e) {
                    } catch (IOException e) {
                    } finally {
                        // Finalize
                        IOUtils.closeQuietly(reader);
                        connection.disconnect();
                        c.add(Calendar.HOUR_OF_DAY, 1);
                System.out.println(Thread.currentThread().getName() + "\n" +
                                        "Transfer rate: " + new DecimalFormat("0.00",
                                        new DecimalFormatSymbols(Locale.UK)).format(
                                        ((long)bytes * 1024) / (millis * 1000)) +
                                        " kb/s\nAvg millis/cycle: " + millis / 500 + "\n");
    }However, this modification did not change the result.
    Your figures also suggest that each transfer is 200k. Is that realistic?Based on the figure your calculations are correct, but I knew for a fact that was not the case. So I ran the code again (single thread) and the value of 'millis' turns out to be ~28 sec giving me a ~933 kb/s rate. (933 kb/s * 28 sec) / 500 cycles = ~52kb per transfer/webpage which is the right size. So to correct myself; When you asked me two posts above if the size of all transferred data was 10MB it was infact about 2,5MB, but you could not have known that.
    This got me really puzzled. The total time spent is 113 sec (measured in the main method), but only 28 of them (given by variable millis) were spent actually fetching - so what is the actual transfer rate? And where has the remaining 85 seconds gone? Is the other stuff really that expensive? Or are my measurements wrong? I think I need some concrete suggestions instead of just guessing on my own here.
    In your parallel thread case, you are transferring 5 times the data in the multi-threaded case, so the basis for comparison is rather invalid. It might be more interesting to time 5 x thread.run() as against 5 x thread.start() followed by 5 x thread.join().You'll have to spoon feed me this one. Anyway, at this point I don't even know if my rate is correct for a single thread let alone multi-threaded.

Maybe you are looking for

  • The home button on my iPhone 5s is sunk in?

    i never noticed that the home button was sunk in until I used my friends iPhone 5s, I still have warranty on my phone, will Apple replace it?

  • I did the upgrade but my apps now don't work. Any suggestions?

    I click on them, then appear to start then return to start screen. If I delete them and reinstall then they work. But I don't want to do that for all 30...

  • Bottom right for dock location?

    On my wife's '09 iMac and on the old G5 tower (retired after the mother board passed on), I had the dock in my preferred spot on the right hand side.  But also somehow I had gotten in on the bottom of the screen, which is great as it gives you more h

  • Help with photos lost

    My daughter just sync he'd iPhone to iTunes on MacBook and lost all iPhone photos. Can I retrieve them. She did not photo stream them

  • OSx 10.10.3 Photos app and iCloud storage

    What does OSx 10.10.3 Photo app do if iCloud is enabled and photo library exceeds size if iCloud storage?