忍者ブログ

ビーキョウのIT

このブログは99%ののほほんと1%のお菓子でできています。

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。


WindowsUpdateについて

ちゃ(´・ω・)ノ

今回はセキュリティについてのお話。
大半の人がOSはWindowsを使ってると思うのですが、
WindowsはOSの中でもシェア(人気)が高いので、
たくさんウイルスやスパイウェアがWindowsを狙って作られてます。
やっぱり人がいっぱいつかってるPCのほうが狙いやすいしね(´・ω・)

で、みなさんはWindowsのUpdateをしているでしょうか?
基本は自動になっていると思うのですが、
重いからとかの理由で、手動にし、最近UPDATEしてない人はいませんか?(つω・`)
WindowsのUPDATEは、発見されたOSの弱点(脆弱性)を修正したりしているので、
ほっとくと、ウイルスやスパイウェアに弱くなります(´・ω・`)
ウイルスやスパイウェアにかかると
PCが変になったり、パスワードや個人情報を盗まれたりします。
なのでWindowsUPDATEはサボらずにやりましょう!

いまWindowsXPでサービスパック(sp)3がUPDATEででていますが、
色々とバグが発生しているので自動UPDATEはまだきていません(´・ω・)
なので少し調べてからUPDATEかけるとバグ対策などにもなっていいかもしれません♪

拍手[0回]

PR

サーバリソースのグラフ化ソフト②


こんちゃ(´・ω・)ノ

最近というか4月くらいからなのだが、
サーバリソースをグラフ化するソフトを作り出した。

言語はJava!!!

Javaのクライアント系の部分はあんまり作ったことないから勉強なるわぁ。

ソフトの概要としては、
・VMSTAT、JSTATをグラフ化
・サーバに直接アクセスしてVMSTAT、JSTATを取得。
・出力形式はcsv、JPEG、xls
・対応OSはWindows
・JMeterみたいなインタフェースかな。

といった感じの内容になっている。
サーバリソースを監視するソフトは結構あるみたいだが、
VMSTAT,JSTATをグラフ化して、資料として残すようなソフトはあまりない。

なのでこの機会に作っちゃおう。

と、4月半ばからスタートして、6月になってしまったわけだが、
現在はほぼ上に書いたような昨日は実現している。

・サーバアクセス部分はガニメデというライブラリを使用。
Ganymed SSH-2 for Java
URL: http://www.ganymed.ethz.ch/ssh2/

・グラフ化部分はJFreeChartを使用
URL: http://www.jfree.org/jfreechart/

・Excel出力部分はApache POIを使用
URL: http://poi.apache.org/download.html

唯一JSTATのサーバからの取得ができていないといったところか。

今後は、
オプション(グラフの色やデフォルト出力先指定)
メニューの改善
ソフトで作成した画面の保存
ソフトのソース改善
などが課題といったところか。

それらが終わると一通りできるので、
β版で公開するかもしれない。

最終的にはシェアウェアで500~1000円くらいで出そうかと。
機能縮小版のフリーソフト版も考え中。

そうなると、広告用のページやら、パッチ情報やバージョン管理のWebページを作成しなくてはならないな。
そして、インストーラーも作らねば。

作成後のバージョンアップの予定としては、
・現在VMSTAT、JSTATの対応OSがRHEL5、CentOS5だけなので、対応OSを増やす。
・WindwosServerにも対応予定。パフォーマンスモニタなどでいけるのかな。
・出力形式にxml、PNG,GIFを追加
・クライアント環境にMacOSを対応
・ロジックの改善
 


拍手[1回]


Javaプログラミング-ArrayListとLinkedListの違い

JavaのList型にArrayListとLinkedListがある。
実際のプログラミングではどちらを使うのがよいのか。[壁]д・)?

◆ArrayList
データの持ち方:配列構造
データの参照:速い
データの更新:遅い

◆LinkedList
データの持ち方:リスト構造
データの参照:遅い
データの更新:速い

違いが出る理由としては、データの持ち方にある。(`・ω・´)

ArrayListの配列構造は、データを最初から順番に参照していく処理は速いです。
逆に、データを削除や追加を行うと、配列の並べ替えが起きるので遅いのです。

(例)ArrayList[2]のDATA2を削除します。
      [0]         [1]          [2]         [3]          [4]
  [DATA0][DATA1][DATA2][DATA3][DATA4]
① DATA2を削除
     [0]          [1]          [3]         [4]
[DATA0][DATA1][DATA3][DATA4]
②[3][4]の配列を並べ替えます。
  [3]のデータを[2]に、[4]のデータ[3]に移動します。
     [0]         [1]       [3→2]    [4→3]
[DATA0][DATA1][DATA3][DATA4]
この用に余計な処理が起きるのです。


LinkedListのリスト型構造は、データと次データの場所を保持しています。
このような構造をとる事で、チェーンのようにつないで全体のLinkedListとしての形をしている訳です。
順番に参照する動作など、任意の要素を参照する際は最初からたどらなくてはいけないため、時間が掛かります。
この時間はListの要素数に比例して時間が掛かります。
逆に削除、更新する際は、[次DATAの場所]を変更するだけですので、速いです。

(例1)DATA2の参照
 [DATA0]+[DATA1の場所]
                          →[DATA1]+[DATA2の場所]
                                                       →[DATA2]+[最後]
①DATA0のDATA1の場所を取得
②DATA1のDATA2の場所を取得
③DATA2を取得

(例2)DATA1を削除
 [DATA0]+[DATA1の場所]
                          →[DATA1]+[DATA2の場所]
                                                       →[DATA2]+[最後]
①DATA1を削除
 [DATA0]+[DATA1の場所]
                                                            [DATA2]+[最後]

②DATA0の[DATA1の場所]を[DATA2の場所]に変更
 [DATA0]+[DATA2の場所]
                          →[DATA2]+[最後]


二つのListには明確な違いがありますが、
どちらが悪くてどちらが良いというものではありません。
扱うデータによって変わるため、最適なListを選択してください。

Javaプログラミングではループ文でこれらのListを用いた時に、
処理速度に大きな違いがでてしまいますので、ご注意ください。


◆おまけ(´・ω・)ノ
実際のところIteratorパターンという考え方と、
Iteratorインタフェースがあり、
Listの違いなどを意識せず、ループを提供するものがあったりします。
Iteratorと拡張for文を合わせてLinkedListを使用するのが最近は多い気がします。
これをするとLinkedListの順に参照する速さはArrayListとそこまで変わらなくなり、
プログラムの安全も保たれたりします。
このことは次か、そのうち書きたいと思います。

興味があったら自分で調べると色々でてくるよ(´・ω・)b

拍手[0回]


Javaの型変換


int i;
String str;
double d;

◆String→int
int i=Integer.parseInt(str);
int i=Integer.valueOf(str).intValue();

◆int→String
String str=String.valueOf(i);

◆String→double
double d=Double.valueOf(str).doubleValue();
double d=Double.parseDouble(str);

◆double→String
String str=String.valueOf(d);

◆String→java.util.Data
(1)
SimpleDateFormat format = new SimpleDateFormat("yyyy/MM/dd");
java.util.Date day = format.parse(date_data);
(2)
java.util.Date day=Date.valueOf(str);

◆java.util.Data→String
(1)
SimpleDateFormat format = new SimpleDateFormat("yyyyMMddHHmmss");
String str = format.format(date_data);

◆String→java.sql.Date
(1)
DateFormat format=new SimpleDateFormat("yyyy/MM/dd");
java.util.Date date = format.parse(str);
java.sql.Date sqlDate = new java.sql.Date(date_data);
(2)
Calendar c = Calendar.getInstance();
c.set(manageForm.getHistory());
Date d = new Date(c.getTimeInMillis());





 

拍手[0回]


GIGAZINE

ちょお(´・ω・)ノ

今回はサイト紹介1である。

今回紹介というかオススメするサイトは、
知ってる人も多いかもしれないが、
GIGAZINE
というサイトである。



GIGAZINEはニュースサイトであるが、
ブログのようにニュースが更新されていくサイトで、
結構、IT関連やアニメマンガなどの情報、またイベントや動画などの
ニュースが多い。
ネット関連の最新動向や意外な情報が多いです。
また、新しいハンバーガーや色々な新製品のレビューなどもある。

アニメ好き、IT系企業勤務、動画をよく見る人など、
PCをよく使う人には楽しいと思います。

是非サイトを見てみることをオススメします。

GIGAZINE URL:http://gigazine.net/

拍手[0回]


カレンダー

01 2025/02 03
S M T W T F S
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28

最新コメント

[11/13 NEX-C3]
[01/24 R]
[07/30 ビーキョウ]
[07/25 unknown]
[06/24 ブログランキング]

最新トラックバック

バーコード

広告

カウンター

ブログ内検索

プロフィール


HN:ビーキョウ
職業:SI屋(PG、SE)
<自己紹介>
ちゃお(´・ω・)ノ
ビーキョウです。
どんどんスキルアップして、 その中で学んだことを忘れないようにメモ代わり的な 感じで記事を書いていこうという考えです。

なので、適当な部分が多々あるとは思いますが、 なにとぞよろしくお願いします
(´ ▽`)

バナーエリア

Copyright ©  -- ビーキョウのIT --  All Rights Reserved
Designed by CriCri / Photo by Geralt / Powered by [PR]
/ 忍者ブログ