One interesting thing I found reading msdn was that NTFS keeps track of create/modify/access time just like most *nix file systems. However, the time of last access is only kept with a granularity of 1 day. So any benchmarks comparing NTFS with *nix filesystems should use the "noatime" mount option in order to be fair.
It is an interesting tweak - most users do not care about second-precision.
First, IETF does not really control the standards. The standard committees and the working groups do. If a working group prefers HTTP request/response then so be it.
Second, SIP was developed when HTTP request/response seemed like the new way of doing a lot of stuff. It has disadvantages (verbose, textual, lot of cruft you don't need) and advantages (already specified, clear way of extending it, MIME support)
Third, SIP and other protocols used/specified by the telecom industry tend to have layer upon layer. If 1 layer is good, then 10 layers must be ten times as good. Have fun looking at OSP (Open Settlement Protocol)
Re:I doubt that this ubiquious stuff will ever wor
on
Spray-On Computers
·
· Score: 1
This reminds me of Neal Stephenson in his novel "Diamond Age" has a very interesting plot: Put the computation into a virus and let it spread to the unsuspecting victims. And presto! lots of computing power. The disadvantages is that it needs precious bodily fluids for communication.
Yes, the novel is not that realistic and I suspect that Neal Stephenson WUI (Writing Under Influence):-)
The goal of HA is usually that the end-user or the client applications will never detect that part of the system has been down.
One strategy is:
Separate the system into component
For each component:
Devise a mechanishm for dealing with the situation where the component is unavailable for several hours. If that is not possible you must implement redundancy.
Another (or additional) strategy is to implement self-monitoring. The component should monitor themselves for faults, and optionally monitor other components and restart them if necessary. The gotcha here is not to mask any errors for any high-level monitoring system.
You also need error detection&recovery in all components.
One thing that sometimes really bites you with TP is the long time it takes to detect that a connection is broken. You need application-layer keep-alives to detect this rapidly. Changing the kernel parameters for TCP timeouts can be necessary too.
I think it is quite interesting that people recommend that Apple should have embedded watmermarks, unique identifcation, steganography and other stuff in the beta download to identify who leaked the copy.
Isn't this the same posters that normally oppose DRM?:-)
If you look at the SCOX stock you will see something interesting. Since SCO filed the complaint (march 6) the stock has risen from 1.80 to 3.66. So someone is buying already.
Strange... How do you explain the "OS/2 2.11 SMP" box I have on my shelf? And how do you explain the "OS/2 Advanced Server, SMP edition" that I once had installed?
When I switched off my old dual pentium 100 the temperature in my living room dropped 2 degrees celcius. Fortunately, I still have my alpha-500:-)
I have more-or-less deliberatly used my computers to heat my apartment this winter. But I don't have enough hardware to completely switch off the regular radiators.
Re:An interesting extension of a lousy idea.
on
SDSC Secure Syslog
·
· Score: 1
a small high-performance text logger
</shameless plug>
Just the other day I checked a production server - it writes 1800 log lines per second without any problems.
Intercept the current real-world traffic, timestamp the events and write to a log. Let a simulator use the log to generate the traffic in your test setup.
Have you considered that "give in to clients when they want to change the spec halfway through" may be part of their sales tactic, and that major changes is already in the budget for the project?
In any case the best you can do personally is keep track of the resources spent implementing a project. This will enable the sales persons to better estimate how much a project should cost. It also enables you to provide much better estimates for future projects.
This will of course not help right now, and it could be a bit delicate to point out that they have problems keeping the customers in line. Do you eat with them at lunchtime? If you do then drop a line like "uhhh... that new feature X in project X will take some time to implement"
Why would anybody use a proprietary unix when Linux has the following advantages:
Cheaper
Runs on a wide array of hardware
Is rapidly evolving
Supports the latest hardware gadgets
?
Well, the reason people in some cases will proprietary unixes is because the above advantages are not free or does not matter. Eg:
Cost. When you also take into account the hardware, training, saleries, the low (zero) cost of the OS is not that much.
Vendors do not care if a modification/optimization will not work on a peice of hardware they do not support. "Ohh this optimization will break on Pentium3" - the vendor does not care if he does not support Pentium3 and is thus able to do some optimization that Linux cannot. Vendors are also more willing to create two versions for low-end and high-end hardware.
Linux is evovlving. The flipside is that it not stable (as compared to proprietary unixes). With a proprietare unix you get a release which has been tested. And you receive patches. And documentation on the patches. For a system administrator this is important. It is also important for ISVs who are sometimes asked to guarantee that their software/hardword works on with customers hardware/software. It is much easier to guarantee for a stable prorietary unix than for a Linux system with unknown/custom kernel.
Support of legacy hardware. Vendors will usually do much to support legacy hardware. Linux can afford to say that an old piece of hardware is junk and will not be supported. A vendor cannot do that.
Sometimes a proprietary unix can support specialized hardware sooner. Eg. assume that a vendor is developing a WizBangUltraBus which can automatically page out memory to disk, directly interact with the onboard DSP, act as a hardware watchdog, and lots of other things. It is much easier to add support for that in the vendor's proprietary unix than spending months convincing the linux-kernel-mailinglist that support should be added.
Proprietary unixes also has some features that do not exist (yet) for Linux. High-performance distributed lock manager in cluster systems? I would use TruCluster DLM. Want nice administration of a bunch of machines? I would use AIX's DSMIT. Want native support for Veritas filesystem? Try HP-UX. Want LPAR? Try Solaris or HP-UX.
There are also a few other issues such as support for hardware with NDAs. There is also the CYA factor.
The essence of the article is that computers should autonomously fix problems and tune themselves. That is an excellent idea. Remember some old pascal compilers where you forgot to end the program with END. instead of END; and the compiler said "You forgot to use '.' instead of ';'" ? My point is not that it was a silly rule, but that the computer knew the error and could have fixed it itself.
The article also touches automatic database tuning depending on the actual use of the database. I look forward to a database which automatically modifies the schema when it finds that a parent table always joins with a child table with referential constraints.
IBM has previously introduced self-healing servers that essentially are able to detect that something has gone awfully wrong and therefore reboots. It may not be an elegant solution, but if it works the customer is happy.
All this is part of an evolution in software, or a "next step" in software implementation. The steps are:
Software that works
Software that works, but also detects errors and bails out
Software that works, detects errors, and rolls back to a known point
next step Software that works, detects errors, rolls back to a known point, and fixes the error and retries
Examples:
Out of diskspace when you download your email. The email program should find some spare diskspace somewhere on another partition or extend the current partition.
foo-1.7 requires bar-1.2. rpm should automatically downloads bar-1.2. Preferrably from a computer on the same lan that already has bar-1.2
A node in a cluster is overloaded. The cluster software should move applications/services to another node.
A HTTP server is using too much bandwidth. It should automaticall service images with less quality (and therefore use less bandwidth)
I look forward to it. It would allow me to let the computers monitor themselves and fix most problems without pestering me. And then I could use my time for something much more interesting than looking in/var/log/*, restarting failed applications, etc.
Reminds me of CVS log message that showed when one of the developers used to emacs was thrown into vi for editing commit messages:
CVSr ------------------
r on HP ^X^Z^Z^ZzzZZ
I taunted him for a few days after that, and then taught him him to exit vi properly.
As mentioned by other posters, documentation and job rotation is good.
To make sure the documentation is up-to-date, accessible etc. you can make the support calls from the secondary admins to the "prime" non-paid. After a few support calls in the night, on your holiday etc. you will make sure that the documentation is up-to-date, accessible, people know where it is, etc.
Use standard RADIUS accounting; or netflow; or SNMP to query interface statistics.
and tying it to individual accounts
Get a suitable mediation system.
cost overhead increase of changing your billing method
Get a decent billing system. For small systems you can even do your own integration.
And yes, I do work for a billing system vendor. The problem is not the monitoring or the mediation. It is the old legacy systems that are difficult to adapt quickly to new rates methods.
I had a brief look at the problems/contests/tasks. They are not general problems, but biased toward mathematical problems because that is more suitable for contests. Nothing wrong with that.
If the problems should be more like real life they would look more like:
There is a memory leak in this program and it is probably in the database driver. Fix it or find a workaround.
Design and implement a SNMP subagent and integrate into this legacy system...
A customer wants this feature but it has to be backward compatible. Find a solution.
You rarely have the chance to create a new program from scratch in the real world. And when you do - is it maintainable, commented, flexible and robust?
But the contests are not worthless. They show that you are interested in programming and that is important.
... that I wan't to be a programmer or an engineer. I want to be neither, in fact, I want to become a System Administrator.
The best system administators know how to program. At least they know their way around shell scripts, perl, and simple programming in C/Pascal/Delphi/whatever.
As a system administrator it is important to know more than "just" system administration. You should know a bit about network management. You should know a bit about system programming. You should know a bit about databases. You should know a bit about hardware. et cetera.
And remember, even if you do not currently want to be a programmer you may later decide to switch careers which may need more education. It is much, much easier getting education know than when you have bought a house, have kids, and so on.
At least some Canadian online vendors go around VAT by sending their shipments to the customer from some country in the EU. The package isn't subject to VAT if it's sent from France or Belgium. I don't know the legality of this, but the concept sounds somewhat dubious, despite allowing cheaper prices for the customer.
It is legal provided that the french sales tax is paid, and that the total sale to the customer's country is less than a certain amount (100.000 euros I recall). This means that small businesses do not have to deal with foreign sales taxes.
Also, in some countries sales tax does not have to be paid at all if the business' total sales are less than a certain amount (depends on country)
This means hat very small businesses (less than eg. 10000 euros) do not have to add VAT at all. Small business only have to add local VAT as long as the sales to that foreign country is less than 100.000 euros. And only large businesses have to deal with foreign VAT (but they should be capable since they are large)
Whoever moderated that as "insightful" should probably do some research first :-)
p rograms /unlambda/
"Unlamda - Your Functional Programming Language Nightmares Come True"
http://www.eleves.ens.fr:8080/home/madore/
One interesting thing I found reading msdn was that NTFS keeps track of create/modify/access time just like most *nix file systems. However, the time of last access is only kept with a granularity of 1 day. So any benchmarks comparing NTFS with *nix filesystems should use the "noatime" mount option in order to be fair.
It is an interesting tweak - most users do not care about second-precision.
First, IETF does not really control the standards. The standard committees and the working groups do. If a working group prefers HTTP request/response then so be it.
Second, SIP was developed when HTTP request/response seemed like the new way of doing a lot of stuff. It has disadvantages (verbose, textual, lot of cruft you don't need) and advantages (already specified, clear way of extending it, MIME support)
Third, SIP and other protocols used/specified by the telecom industry tend to have layer upon layer. If 1 layer is good, then 10 layers must be ten times as good. Have fun looking at OSP (Open Settlement Protocol)
Yes, the novel is not that realistic and I suspect that Neal Stephenson WUI (Writing Under Influence) :-)
How about Linux-based bulk emailers? :-)
And 2 days after that the first diamond-tipped projectiles will be available.
Devise a mechanishm for dealing with the situation where the component is unavailable for several hours. If that is not possible you must implement redundancy.
Another (or additional) strategy is to implement self-monitoring. The component should monitor themselves for faults, and optionally monitor other components and restart them if necessary. The gotcha here is not to mask any errors for any high-level monitoring system.
You also need error detection&recovery in all components.
One thing that sometimes really bites you with TP is the long time it takes to detect that a connection is broken. You need application-layer keep-alives to detect this rapidly. Changing the kernel parameters for TCP timeouts can be necessary too.
Finally, you may want to have a look at Self-healing servers
I think it is quite interesting that people recommend that Apple should have embedded watmermarks, unique identifcation, steganography and other stuff in the beta download to identify who leaked the copy.
Isn't this the same posters that normally oppose DRM? :-)
If you look at the SCOX stock you will see something interesting. Since SCO filed the complaint (march 6) the stock has risen from 1.80 to 3.66. So someone is buying already.
Strange... How do you explain the "OS/2 2.11 SMP" box I have on my shelf? And how do you explain the "OS/2 Advanced Server, SMP edition" that I once had installed?
I have more-or-less deliberatly used my computers to heat my apartment this winter. But I don't have enough hardware to completely switch off the regular radiators.
a small high-performance text logger
</shameless plug>
Just the other day I checked a production server - it writes 1800 log lines per second without any problems.
Intercept the current real-world traffic, timestamp the events and write to a log.
Let a simulator use the log to generate the traffic in your test setup.
Have you considered that "give in to clients when they want to change the spec halfway through" may be part of their sales tactic, and that major changes is already in the budget for the project?
In any case the best you can do personally is keep track of the resources spent implementing a project. This will enable the sales persons to better estimate how much a project should cost. It also enables you to provide much better estimates for future projects.
This will of course not help right now, and it could be a bit delicate to point out that they have problems keeping the customers in line. Do you eat with them at lunchtime? If you do then drop a line like "uhhh... that new feature X in project X will take some time to implement"
I forgot to write something about the future of proprietary unixes. Another poster's earlier comment wraps that up quite nicely.
- Cheaper
- Runs on a wide array of hardware
- Is rapidly evolving
- Supports the latest hardware gadgets
?Well, the reason people in some cases will proprietary unixes is because the above advantages are not free or does not matter. Eg:
- Cost. When you also take into account the hardware, training, saleries, the low (zero) cost of the OS is not that much.
- Vendors do not care if a modification/optimization will not work on a peice of hardware they do not support. "Ohh this optimization will break on Pentium3" - the vendor does not care if he does not support Pentium3 and is thus able to do some optimization that Linux cannot. Vendors are also more willing to create two versions for low-end and high-end hardware.
- Linux is evovlving. The flipside is that it not stable (as compared to proprietary unixes). With a proprietare unix you get a release which has been tested. And you receive patches. And documentation on the patches. For a system administrator this is important. It is also important for ISVs who are sometimes asked to guarantee that their software/hardword works on with customers hardware/software. It is much easier to guarantee for a stable prorietary unix than for a Linux system with unknown/custom kernel.
- Support of legacy hardware. Vendors will usually do much to support legacy hardware. Linux can afford to say that an old piece of hardware is junk and will not be supported. A vendor cannot do that.
Sometimes a proprietary unix can support specialized hardware sooner. Eg. assume that a vendor is developing a WizBangUltraBus which can automatically page out memory to disk, directly interact with the onboard DSP, act as a hardware watchdog, and lots of other things. It is much easier to add support for that in the vendor's proprietary unix than spending months convincing the linux-kernel-mailinglist that support should be added.Proprietary unixes also has some features that do not exist (yet) for Linux. High-performance distributed lock manager in cluster systems? I would use TruCluster DLM. Want nice administration of a bunch of machines? I would use AIX's DSMIT. Want native support for Veritas filesystem? Try HP-UX. Want LPAR? Try Solaris or HP-UX.
There are also a few other issues such as support for hardware with NDAs. There is also the CYA factor.
The article also touches automatic database tuning depending on the actual use of the database. I look forward to a database which automatically modifies the schema when it finds that a parent table always joins with a child table with referential constraints.
IBM has previously introduced self-healing servers that essentially are able to detect that something has gone awfully wrong and therefore reboots. It may not be an elegant solution, but if it works the customer is happy.
All this is part of an evolution in software, or a "next step" in software implementation. The steps are:
Examples:
Out of diskspace when you download your email. The email program should find some spare diskspace somewhere on another partition or extend the current partition.
foo-1.7 requires bar-1.2. rpm should automatically downloads bar-1.2. Preferrably from a computer on the same lan that already has bar-1.2
A node in a cluster is overloaded. The cluster software should move applications/services to another node.
A HTTP server is using too much bandwidth. It should automaticall service images with less quality (and therefore use less bandwidth)
I look forward to it. It would allow me to let the computers monitor themselves and fix most problems without pestering me. And then I could use my time for something much more interesting than looking in /var/log/*, restarting failed applications, etc.
CVSr ------------------
r on HP ^X^Z^Z^ZzzZZ
I taunted him for a few days after that, and then taught him him to exit vi properly.
As mentioned by other posters, documentation and job rotation is good.
To make sure the documentation is up-to-date, accessible etc. you can make the support calls from the secondary admins to the "prime" non-paid. After a few support calls in the night, on your holiday etc. you will make sure that the documentation is up-to-date, accessible, people know where it is, etc.
Yes, I am evil :-)
Some are commercial and some are freeware/public domain/whatever.
- Why? Does the 4GL program work? Why change it?
- Which kind of 4GL? Some 4GLs are event driven, some are 3½GL, some are database-centric, some are GUI-centric, etc.
To me it sounds like a project either heavily underestimated, or a project doomed to fail.technical aspects of monitoring bandwidth usage
Use standard RADIUS accounting; or netflow; or SNMP to query interface statistics.
and tying it to individual accounts
Get a suitable mediation system.
cost overhead increase of changing your billing method
Get a decent billing system. For small systems you can even do your own integration.
And yes, I do work for a billing system vendor. The problem is not the monitoring or the mediation. It is the old legacy systems that are difficult to adapt quickly to new rates methods.
I had a brief look at the problems/contests/tasks. They are not general problems, but biased toward mathematical problems because that is more suitable for contests. Nothing wrong with that.
If the problems should be more like real life they would look more like:
- There is a memory leak in this program and it is probably in the database driver. Fix it or find a workaround.
- Design and implement a SNMP subagent and integrate into this legacy system...
- A customer wants this feature but it has to be backward compatible. Find a solution.
You rarely have the chance to create a new program from scratch in the real world. And when you do - is it maintainable, commented, flexible and robust?But the contests are not worthless. They show that you are interested in programming and that is important.
The best system administators know how to program. At least they know their way around shell scripts, perl, and simple programming in C/Pascal/Delphi/whatever.
As a system administrator it is important to know more than "just" system administration. You should know a bit about network management. You should know a bit about system programming. You should know a bit about databases. You should know a bit about hardware. et cetera.
And remember, even if you do not currently want to be a programmer you may later decide to switch careers which may need more education. It is much, much easier getting education know than when you have bought a house, have kids, and so on.
It is legal provided that the french sales tax is paid, and that the total sale to the customer's country is less than a certain amount (100.000 euros I recall). This means that small businesses do not have to deal with foreign sales taxes.
Also, in some countries sales tax does not have to be paid at all if the business' total sales are less than a certain amount (depends on country)
This means hat very small businesses (less than eg. 10000 euros) do not have to add VAT at all. Small business only have to add local VAT as long as the sales to that foreign country is less than 100.000 euros. And only large businesses have to deal with foreign VAT (but they should be capable since they are large)