問題タブ [application-variables]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
6 に答える
636 参照

php - ファイルパーミッションをいじらずにPHPキャッシング(また、PHPでASPアプリケーション変数をエミュレートする方法)

私は、さまざまなWebホストを使用して、かなり非技術的なユーザーによって展開される多くの異なるクライアント/サイトに送信されるPHPスクリプトにある種のキャッシュを実装しようとしています。ユーザーの非技術的な性質のため、ファイルのアクセス許可を微調整するようにユーザーに依頼することは避けたいと思います。キャッシングはセッション間で行う必要があるため、セッション変数の使用は不要です。これをASPでコーディングする場合は、アプリケーション変数を使用しますが、PHPには存在しません(私の知る限り)

誰かがこれを達成する方法について何か提案がありますか?

これが私が考えたいくつかの可能性です、これらについてのコメントは役に立つでしょう:

  • システム一時フォルダー内のファイルを介したキャッシュ-sys_get_temp_dir()(またはPHP4のホームロールされた同様の関数)を使用して、そのようなフォルダーを見つけることができます。ここでの欠点は、openbase_dir制限を使用しているホストではおそらく機能しないことです。
  • 私が見たいくつかのWebサイトでは、PHPをだましてすべてのユーザーセッションを同じセッション状態で共有させ、それによってセッション変数をセッション変数のように動作させることに言及しました。もちろん、今はその投稿を見つけることができません...これはとにかく怖いようです。(この質問をもう一度見つけたら、この投稿へのリンクで更新します)
  • AmazonのSimpleStorageServiceのようなサードパーティのデータストアを使用する-やり過ぎのようです
  • 私が制御するサーバーにデータをキャッシュし、ヒットするたびにクライアントにそこから新しいデータをダウンロードさせます。

繰り返しになりますが、これらのアイデアや新しいアイデアについてのコメントをいただければ幸いです。

更新: session_id()を使用して共有セッション状態を使用しようとしましたが、機能しません。各セッションは独自の「GlobalCache」を維持していますが、その理由は何ですか?:

更新: memcachedの使用を提案する人もいますが、これは実際には一部の人にとっては優れたソリューションですが、エンドサーバー環境を制御できないため、オプションではありません。アイデアは、人々が箱から出してすぐに機能する共有ホスティングアカウントにFTPで接続できるスクリプトを用意することです。

更新:誰かがスクリプトを使用して独自のキャッシュフォルダーを作成することを提案しましたが、既に書き込みアクセス許可が設定されているフォルダー内にそのようなフォルダーを作成する必要はありませんか?

更新、解決策が見つかりました:グローバルセッションスクリプトの問題を理解し、その影響に対する独自の回答を投稿しました。みんな助けてくれてありがとう。

0 投票する
4 に答える
95 参照

performance - アプリケーション変数とパフォーマンス?

より多くのアプリケーション変数を使用すると、asp.net Webサイトのパフォーマンスに影響しますか?

0 投票する
2 に答える
200 参照

ado.net - DataAccesslayer(同じソリューションの下の別のプロジェクト)でアプリケーション変数にアクセスする

3つのプロジェクトでソリューションがあります.1つはUI(Webページを含む)、もう1つはBL用、もう1つはDataAccessレイヤー用です。次に、DataAccessレイヤープロジェクト内の1つのクラスのアプリケーション変数に格納されている1つの値にアクセスします。そこにアプリケーション変数?

0 投票する
5 に答える
56049 参照

tomcat - JAX-RS リソースで ServletContext を取得する

Tomcatにデプロイして、JAX-RSをいじっています。基本的には次のとおりです。

ServletContextJAX-RS リソース内でを取得する方法はありますか?

0 投票する
1 に答える
1439 参照

windows-7 - Windows 7 でデータをレジストリに保存する

Windows 7 ではレジストリへのアクセスが制限されているため、アプリケーションから直接書き込むことができないと聞きました。そうですか?C# でアプリケーションを開発していますが、ポート設定、最後に使用したファイルなどをセッション間で保存できるようにしたいと考えています。レジストリはまだ良い選択肢ですか、それとも今これを行うための別の好ましい手段はありますか? ありがとう。

0 投票する
5 に答える
195 参照

asp.net - カスタムクラスの1000以上のインスタンスのリストをセッションに保存することはメモリの問題ですか?

カスタムクラスの1000インスタンスのリストをセッション変数に保存するのは良いアプローチですか?私のasp.netWebアプリには多言語サポートが必要であり、ラベルをテーブルに格納しています。独自の言語設定とテキスト(ラベルコンテンツ)設定を持つ複数のユーザーがいます。

ラベルを読み込んでセッション変数に保存し、ページで使用するためにアクセスすることを考えています。アプリケーション変数に保存することは、各顧客がラベル用の独自のテキストを持っているため機能しません。したがって、セッションを保存するのは良い方法です。これ ?私は今のところほぼ1000のラベルを持っていると思います、そしてそれはアプリケーションが成長するにつれて増加するかもしれません。

私のカスタムクラスには2つのプロパティがあります。LanguageCodeとLanguageName

何らかの理由で、asp.netリソースファイルを使用できません:(

これについてどう思いますか?

0 投票する
3 に答える
629 参照

c# - ASP.NET MVC3 でアプリケーション全体でオブジェクトを共有する

C# と Razor を使用した ASP.NET MVC3 Web アプリケーションがあります。

ビューのフォームを介して、コントローラ AContext.User.Identity.Nameのアクション メソッドに送信されます。

この変数をアプリケーション全体 (複数のコントローラー間) で利用できるようにしたいと考えています。これで、 Controller A内のグローバル変数_UserNameに割り当てることができましたが、もちろんController Bでは使用できません。

それは可能ですか?

ありがとう

フランチェスコ

0 投票する
5 に答える
1478 参照

coldfusion - CFCでSESSION変数がデータソースおよびデータベーススキーマに使用されている場合、これらの変数の使用を回避するにはどうすればよいですか?

SESSION変数とAPPLICATION変数の使用を避けるためにすべてのCFCをリファクタリングしようとしています(簡単な作業ではありません)。

ただし、このアプリケーションでは、ログインしているさまざまなユーザーがさまざまなデータベースやスキーマにアクセスしている可能性があるため、すべてのデータベース呼び出しでSESSION変数が使用されます。

データベースにアクセスするすべてのメソッド呼び出しにこれらの2つのSESSION変数を渡すという問題を経験したくありません。リモートAJAX呼び出しでDSNとスキーマ名を渡したくないので、これは特に当てはまります。

これを行うためのベストプラクティスは何ですか?CFCで使用されるべきではないすべてのスコープに対して?

0 投票する
2 に答える
297 参照

asp.net - ASP.NETセッションはアプリケーションより長く存続できますか

これは、特にASP.NETで長時間作業した後は、ばかげた/つまらない質問になる可能性があります:)が、確認する必要があります。

セッション(つまりASP.NETセッション)をアプリケーション(アプリインスタンス/アプリドメイン/アプリケーション変数)よりも長持ちさせることは可能ですか?

つまり、Global.asaxでApplication_Endが呼び出された場合、アクティブなセッションがなくなることを示していますか?新しいリクエストがあると、Application_Startの後に新しいSession_Startが続きますか?

セッションは常にInProcであるとは限らないことに注意してください。セッションは、状態サーバーまたはSQLサーバーにある可能性があります。

0 投票する
2 に答える
45 参照

android - アプリケーション変数の効率?

かなりの量のデータを抽出する必要があるデータベースがあります。今、私は必要なときにそのデータを取得します。つまり、データベースの相互作用を処理するクラスを作成し、アクティビティがデータを必要とするときはいつでも、データのためにそのクラスを呼び出します。したがって、一度にアクティビティには、メモリ内の最小限のデータ(つまり、使用しているデータ)しかありません。ただし、アクティビティを変更するたびに、新しいアクティビティのデータをフェッチするためにデータベースアクセスを実行する必要があります。

方法2

これとは対照的に、私はこの他の選択肢を持っています。アプリケーションオブジェクトを作成し、最初にデータベースアクセスを実行してから、(すべてのアクティビティで)必要なすべてのデータをアプリケーションオブジェクトに格納します。データが必要なときはいつでも、アプリケーションオブジェクトを参照します。これの欠点は、特定の瞬間に使用していない余分なデータを保持しすぎることです。

上記の2つのアプローチのどちらが優れていますか?

前もって感謝します。